Compare commits

..

No commits in common. "6049048bbf41e001e5d11ec8c2acb4064595bc15" and "e7102c4de655756102d7b76d84de9aebc973a9dc" have entirely different histories.

3 changed files with 48 additions and 8 deletions

View File

@ -18,8 +18,6 @@ build:
test:
image: python:3.10-slim-bullseye
stage: test
variables:
DATABASE: sqlite:///../app/db.sqlite
before_script:
- pip install -r requirements.txt
- pip install pytest httpx

View File

@ -11,6 +11,27 @@ Base = declarative_base()
class Origin(Base):
__tablename__ = "origin"
"""
CREATE TABLE origin (
id INTEGER NOT NULL,
origin_ref TEXT,
hostname TEXT,
guest_driver_version TEXT,
os_platform TEXT,
os_version TEXT,
PRIMARY KEY (id)
);
CREATE INDEX ix_origin_0548dd22f20de1bb ON origin (origin_ref);
"""
"""
1|B210CF72-FEC7-4440-9499-1156D1ACD13A|ubuntu-grid-server|525.60.13|Ubuntu 20.04|20.04.5 LTS (Focal Fossa)
2|230b0000-a356-4000-8a2b-0000564c0000|PC-WORKSTATION|527.41|Windows 10 Pro|10.0.19045
3|908B202D-CC43-420F-A2EF-FC092AAE8D38|docker-cuda-1|525.60.13|Debian GNU/Linux 10 (buster) 10|10 (buster)
4|41720000-FA43-4000-9472-0000E8660000|PC-Windows|527.41|Windows 10 Pro|10.0.19045
5|723EA079-7B0C-4E25-A8D4-DD3E89F9D177|docker-cuda-2|525.60.13|Debian GNU/Linux 10 (buster) 10|10 (buster)
"""
origin_ref = Column(CHAR(length=36), primary_key=True, unique=True, index=True) # uuid4
hostname = Column(VARCHAR(length=256), nullable=True)
@ -48,9 +69,28 @@ class Origin(Base):
class Lease(Base):
__tablename__ = "lease"
origin_ref = Column(CHAR(length=36), ForeignKey(Origin.origin_ref), primary_key=True, nullable=False, index=True) # uuid4
lease_ref = Column(CHAR(length=36), primary_key=True, nullable=False, index=True) # uuid4
"""
CREATE TABLE lease (
id INTEGER NOT NULL,
origin_ref TEXT,
lease_ref TEXT,
lease_created DATETIME,
lease_expires DATETIME, lease_last_update DATETIME,
PRIMARY KEY (id)
);
CREATE INDEX ix_lease_11c7d13bfb17f70d ON lease (origin_ref, lease_ref);
"""
"""
1|B210CF72-FEC7-4440-9499-1156D1ACD13A|9c4536f9-a216-44c7-a1d3-388a15ee80be|2022-12-20 17:29:07.906668|2022-12-22 04:45:58.138211|2022-12-21 04:45:58.138211
2|230b0000-a356-4000-8a2b-0000564c0000|1d95e160-058d-4052-b49f-b85306b4c345|2022-12-20 17:30:25.388389|2022-12-23 06:07:29.913027|2022-12-22 06:07:29.913027
3|908B202D-CC43-420F-A2EF-FC092AAE8D38|9e1bca05-e247-4847-9de6-8b9a210b353e|2022-12-20 17:31:40.158003|2022-12-23 09:28:57.379008|2022-12-22 09:28:57.379008
4|41720000-FA43-4000-9472-0000E8660000|f2ece7fa-d0c6-4af4-901c-6d3b2c3ecf88|2022-12-20 21:03:33.403711|2022-12-23 08:44:39.998754|2022-12-22 08:44:39.998754
5|723EA079-7B0C-4E25-A8D4-DD3E89F9D177|5455f59b-dd70-45c1-82fa-3fd5fae6c037|2022-12-21 06:05:35.085572|2022-12-23 04:53:41.385178|2022-12-22 04:53:41.385178
"""
origin_ref = Column(CHAR(length=36), ForeignKey(Origin.origin_ref), primary_key=True, nullable=False, index=True)
lease_ref = Column(CHAR(length=36), primary_key=True, nullable=False, index=True)
lease_created = Column(DATETIME(), nullable=False)
lease_expires = Column(DATETIME(), nullable=False)
lease_updated = Column(DATETIME(), nullable=False)

View File

@ -1,11 +1,13 @@
from starlette.testclient import TestClient
import importlib.util
import sys
# add relative path to use packages as they were in the app/ dir
sys.path.append('../')
sys.path.append('../app')
MODULE, PATH = 'main.app', '../app/main.py'
from app import main
spec = importlib.util.spec_from_file_location(MODULE, PATH)
main = importlib.util.module_from_spec(spec)
sys.modules[MODULE] = main
spec.loader.exec_module(main)
client = TestClient(main.app)