diff options
author | Bo Tran <yeuconay.caconaynua.96.nd@gmail.com> | 2021-03-24 22:20:31 +0700 |
---|---|---|
committer | Bo Tran <ministry.96.nd@gmail.com> | 2021-03-25 09:29:22 +0700 |
commit | ab019378a21eee4d4a5619010b1b3e87c0780a63 (patch) | |
tree | a59bef8212b30103e8be011d421812a41516c1a9 /trove/guestagent/datastore/mysql_common/service.py | |
parent | d14fc534212ebad2b48888ec66c9a774d4fb4e97 (diff) | |
download | trove-ab019378a21eee4d4a5619010b1b3e87c0780a63.tar.gz |
Improve guest agent when start
If we run guest agent, sometime it can't connect to database because
root user was secure with password make can't right work.
I hope this path will improve it by get password of root user to
authenticate with database
Task: #42105
Story: #2008746
Change-Id: I666120fc9df8d1c0bea72dee95763c2462e256ca
Diffstat (limited to 'trove/guestagent/datastore/mysql_common/service.py')
-rw-r--r-- | trove/guestagent/datastore/mysql_common/service.py | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/trove/guestagent/datastore/mysql_common/service.py b/trove/guestagent/datastore/mysql_common/service.py index 50e5ebe7..b0861b88 100644 --- a/trove/guestagent/datastore/mysql_common/service.py +++ b/trove/guestagent/datastore/mysql_common/service.py @@ -15,12 +15,13 @@ import abc import re +import sqlalchemy +import urllib + from oslo_log import log as logging from oslo_utils import encodeutils -import sqlalchemy from sqlalchemy import exc from sqlalchemy.sql.expression import text -import urllib from trove.common import cfg from trove.common import exception @@ -59,6 +60,7 @@ BACKUP_LOG = re.compile(r'.*Backup successfully, checksum: (?P<checksum>.*), ' class BaseMySqlAppStatus(service.BaseDbStatus): + def __init__(self, docker_client): super(BaseMySqlAppStatus, self).__init__(docker_client) @@ -435,13 +437,13 @@ class BaseMySqlApp(service.BaseDbApp): if ENGINE: return ENGINE - user = ADMIN_USER_NAME - password = "" try: + user = ADMIN_USER_NAME password = self.get_auth_password() except exception.UnprocessableEntity: # os_admin user not created yet user = 'root' + password = self.get_auth_password(file="root.cnf") ENGINE = sqlalchemy.create_engine( CONNECTION_STR_FORMAT % (user, @@ -819,6 +821,7 @@ class BaseMySqlApp(service.BaseDbApp): class BaseMySqlRootAccess(object): + def __init__(self, mysql_app): self.mysql_app = mysql_app |