Skip to content

Commit 38b2911

Browse files
committed
Allow using KojiBuildTargetModel with OpenScanHub
... related events. Signed-off-by: Siteshwar Vashisht <[email protected]>
1 parent 09ea5aa commit 38b2911

File tree

2 files changed

+12
-7
lines changed

2 files changed

+12
-7
lines changed

packit_service/events/openscanhub/abstract.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,15 @@
22
# SPDX-License-Identifier: MIT
33

44
from logging import getLogger
5-
from typing import Optional
5+
from typing import Optional, Union
66

77
from ogr.abstract import GitProject
88

99
from packit_service.config import ServiceConfig
1010
from packit_service.models import (
1111
AbstractProjectObjectDbType,
1212
CoprBuildTargetModel,
13+
KojiBuildTargetModel,
1314
OSHScanModel,
1415
ProjectEventModel,
1516
)
@@ -33,14 +34,16 @@ def __init__(
3334
self.commit_sha = commit_sha
3435

3536
self.scan = OSHScanModel.get_by_task_id(task_id)
36-
self.build: Optional[CoprBuildTargetModel] = None
37+
self.build: Optional[Union[CoprBuildTargetModel, KojiBuildTargetModel]] = None
3738
if not self.scan:
3839
logger.warning(
3940
f"Scan with id {task_id} not found in the database."
4041
" It should have been created when receiving the CoprBuildEndEvent"
4142
" and should have been associated with the copr build.",
4243
)
4344
return
45+
46+
# TODO: How to handle koji builds here?
4447
self.build = self.scan.copr_build_target
4548
if not self.build:
4649
logger.warning(
@@ -54,7 +57,9 @@ def __init__(
5457
# and have to be serialized to be later found in the
5558
# event metadata
5659
self.commit_sha = project_event.commit_sha if not self.commit_sha else self.commit_sha
57-
self.identifier = identifier or self.build.identifier
60+
self.identifier = identifier
61+
if not self.identifier and isinstance(self.build, CoprBuildTargetModel):
62+
self.identifier = self.build.identifier
5863

5964
def get_db_project_object(self) -> Optional[AbstractProjectObjectDbType]:
6065
return self.build.get_project_event_object()

packit_service/worker/handlers/open_scan_hub.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22
# SPDX-License-Identifier: MIT
33
import json
44
import logging
5-
from typing import Optional, Union
5+
from typing import Optional, Union, cast
66

77
import requests
88
from packit.config import (
99
JobType,
1010
)
1111

1212
from packit_service.events import openscanhub
13-
from packit_service.models import OSHScanStatus
13+
from packit_service.models import CoprBuildTargetModel, KojiBuildTargetModel, OSHScanStatus
1414
from packit_service.service.urls import get_openscanhub_info_url
1515
from packit_service.worker.checker.abstract import Checker
1616
from packit_service.worker.checker.open_scan_hub import IsEventForJob, RawhideX86Target
@@ -87,7 +87,7 @@ def get_helper(self) -> CoprOpenScanHubHelper:
8787

8888
return CoprOpenScanHubHelper(
8989
copr_build_helper=build_helper,
90-
build=self.event.build,
90+
build=cast(CoprBuildTargetModel, self.event.build),
9191
)
9292

9393
def check_scan_and_build(self):
@@ -247,7 +247,7 @@ def get_helper(self) -> KojiOpenScanHubHelper:
247247

248248
return KojiOpenScanHubHelper(
249249
koji_build_helper=build_helper,
250-
build=self.event.build,
250+
build=cast(KojiBuildTargetModel, self.event.build),
251251
)
252252

253253
def check_scan_and_build(self):

0 commit comments

Comments
 (0)