Hotfix: `use_mysql` is missing

This commit is contained in:
Dniel97 2023-10-28 23:52:17 +02:00
parent 4b7cde6dfb
commit 8f2b24edaa
Signed by: Dniel97
GPG Key ID: 6180B3C768FB2E08
1 changed files with 21 additions and 17 deletions

View File

@ -26,7 +26,7 @@ from titles.ongeki.const import OngekiConstants
class AquaData:
def __init__(self, aqua_db_path: str) -> None:
if '@' in aqua_db_path:
if "@" in aqua_db_path:
self.__url = f"mysql+pymysql://{aqua_db_path}"
else:
self.__url = f"sqlite:///{aqua_db_path}"
@ -93,6 +93,7 @@ class Importer:
self.config_folder = cfg_folder
self.data = Data(core_cfg)
self.title_registry: Dict[str, Any] = {}
self.use_mysql = False
self.logger = logging.getLogger("importer")
if not hasattr(self.logger, "initialized"):
@ -116,29 +117,29 @@ class Importer:
coloredlogs.install(level="INFO", logger=self.logger, fmt=log_fmt_str)
self.logger.initialized = True
if not os.path.isfile(f'{aqua_folder}/application.properties'):
if not os.path.isfile(f"{aqua_folder}/application.properties"):
self.logger.error("Could not locate AQUA application.properties file!")
exit(1)
with open(f'{aqua_folder}/application.properties') as file:
lines = file.readlines()
with open(f"{aqua_folder}/application.properties") as file:
lines = file.readlines()
properties = {}
for line in lines:
line = line.strip()
if not line or line.startswith('#'):
if not line or line.startswith("#"):
continue
parts = line.split('=')
parts = line.split("=")
if len(parts) >= 2:
key = parts[0].strip()
value = '='.join(parts[1:]).strip()
value = "=".join(parts[1:]).strip()
properties[key] = value
db_driver = properties.get('spring.datasource.driver-class-name')
if 'sqlite' in db_driver:
db_driver = properties.get("spring.datasource.driver-class-name")
if "sqlite" in db_driver:
aqua_db_path = None
db_url = properties.get('spring.datasource.url').split('sqlite:')[1]
temp = os.path.join(f'{aqua_folder}/{db_url}')
db_url = properties.get("spring.datasource.url").split("sqlite:")[1]
temp = os.path.join(f"{aqua_folder}/{db_url}")
if os.path.isfile(temp):
aqua_db_path = temp
@ -148,12 +149,14 @@ class Importer:
self.aqua = AquaData(aqua_db_path)
elif 'mysql' in db_driver or 'mariadb' in db_driver:
elif "mysql" in db_driver or "mariadb" in db_driver:
self.use_mysql = True
db_username = properties.get('spring.datasource.username')
db_password = properties.get('spring.datasource.password')
db_url = properties.get('spring.datasource.url').split('?')[0].split('//')[1]
self.aqua = AquaData(f'{db_username}:{db_password}@{db_url}')
db_username = properties.get("spring.datasource.username")
db_password = properties.get("spring.datasource.password")
db_url = (
properties.get("spring.datasource.url").split("?")[0].split("//")[1]
)
self.aqua = AquaData(f"{db_username}:{db_password}@{db_url}")
else:
self.logger.error("Unknown database type!")
@ -751,5 +754,6 @@ def main():
importer.import_chuni()
importer.import_ongeki()
if __name__ == "__main__":
main()
main()