1
0
mirror of https://git.yoctoproject.org/poky synced 2026-06-01 13:09:50 +00:00

bitbake: hashserv: Add SQLalchemy backend

Adds an SQLAlchemy backend to the server. While this database backend is
slower than the more direct sqlite backend, it easily supports just
about any SQL server, which is useful for large scale deployments.

(Bitbake rev: e0b73466dd7478c77c82f46879246c1b68b228c0)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Joshua Watt
2023-11-03 08:26:26 -06:00
committed by Richard Purdie
parent baa3e5391d
commit cfbb1d2cc0
5 changed files with 362 additions and 5 deletions
+19 -2
View File
@@ -35,15 +35,32 @@ def parse_address(addr):
return (ADDR_TYPE_TCP, (host, int(port)))
def create_server(addr, dbname, *, sync=True, upstream=None, read_only=False):
def create_server(
addr,
dbname,
*,
sync=True,
upstream=None,
read_only=False,
db_username=None,
db_password=None
):
def sqlite_engine():
from .sqlite import DatabaseEngine
return DatabaseEngine(dbname, sync)
def sqlalchemy_engine():
from .sqlalchemy import DatabaseEngine
return DatabaseEngine(dbname, db_username, db_password)
from . import server
db_engine = sqlite_engine()
if "://" in dbname:
db_engine = sqlalchemy_engine()
else:
db_engine = sqlite_engine()
s = server.Server(db_engine, upstream=upstream, read_only=read_only)