Skip to content

Commit d54154d

Browse files
hubatishcopybara-github
authored andcommitted
Set container_cluster on edw_service (specifically for Trino)
Won't do anything for other edw services / if container_cluster is not initialized. PiperOrigin-RevId: 853843563
1 parent 394435c commit d54154d

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

perfkitbenchmarker/benchmark_spec.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -520,6 +520,11 @@ def ConstructEdwService(self):
520520
self.edw_service = edw_service_class(
521521
self.config.edw_service
522522
) # pytype: disable=not-instantiable
523+
if self.container_cluster:
524+
assert isinstance(
525+
self.container_cluster, container_service.KubernetesCluster
526+
)
527+
self.edw_service.SetContainerCluster(self.container_cluster)
523528

524529
def ConstructEdwComputeResource(self):
525530
"""Create an edw_compute_resource object."""

perfkitbenchmarker/edw_service.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,14 @@
1616
Classes to wrap specific backend services are in the corresponding provider
1717
directory as a subclass of BaseEdwService.
1818
"""
19+
1920
import datetime
2021
import os
2122
from typing import Any, Dict, List
2223

2324
from absl import flags
2425
from absl import logging
26+
from perfkitbenchmarker import container_service
2527
from perfkitbenchmarker import resource
2628

2729
flags.DEFINE_integer(
@@ -443,6 +445,7 @@ def __init__(self, edw_service_spec):
443445
# resource workflow management
444446
self.supports_wait_on_delete = True
445447
self.client_interface: EdwClientInterface
448+
self.container_cluster: container_service.KubernetesCluster | None = None
446449

447450
def GetClientInterface(self) -> EdwClientInterface:
448451
"""Gets the active Client Interface."""
@@ -509,6 +512,12 @@ def GetDatasetLastUpdatedTime(self, dataset=None):
509512
def SetDestinationTable(self, dataset: str):
510513
pass
511514

515+
def SetContainerCluster(
516+
self, container_cluster: container_service.KubernetesCluster
517+
):
518+
"""Sets the container cluster if one is applicable."""
519+
self.container_cluster = container_cluster
520+
512521
def ExtractDataset(
513522
self, dest_bucket, dataset=None, tables=None, dest_format='CSV'
514523
):

0 commit comments

Comments
 (0)