|
35 | 35 | from exasol.slc.internal.tasks.test.test_container_content import ( |
36 | 36 | build_test_container_content, |
37 | 37 | ) |
| 38 | +from exasol.slc.models.accelerator import Accelerator, defaultAccelerator |
38 | 39 | from exasol.slc.models.compression_strategy import ( |
39 | 40 | CompressionStrategy, |
40 | 41 | defaultCompressionStrategy, |
@@ -103,6 +104,7 @@ def run_db_test( |
103 | 104 | log_level: Optional[str] = None, |
104 | 105 | use_job_specific_log_file: bool = True, |
105 | 106 | compression_strategy: CompressionStrategy = defaultCompressionStrategy(), |
| 107 | + accelerator: Accelerator = defaultAccelerator(), |
106 | 108 | ) -> AllTestsResult: |
107 | 109 | """ |
108 | 110 | This command runs the integration tests in local docker-db. |
@@ -155,6 +157,12 @@ def run_db_test( |
155 | 157 | if external_exasol_ssh_port is None: |
156 | 158 | raise api_errors.MissingArgumentError("external_exasol_ssh_port") |
157 | 159 |
|
| 160 | + docker_runtime = None |
| 161 | + if accelerator == Accelerator.NVIDA: |
| 162 | + additional_db_parameter += ("-enableAcceleratorDeviceDetection=1",) |
| 163 | + docker_runtime = "nvidia" |
| 164 | + docker_environment_variable += ("NVIDIA_VISIBLE_DEVICES=all",) |
| 165 | + |
158 | 166 | def root_task_generator() -> DependencyLoggerBaseTask: |
159 | 167 | return generate_root_task( |
160 | 168 | task_class=TestContainer, |
@@ -199,6 +207,7 @@ def root_task_generator() -> DependencyLoggerBaseTask: |
199 | 207 | additional_db_parameter=additional_db_parameter, |
200 | 208 | test_container_content=build_test_container_content(test_container_folder), |
201 | 209 | compression_strategy=compression_strategy, |
| 210 | + docker_runtime=docker_runtime, |
202 | 211 | docker_environment_variables=docker_environment_variable, |
203 | 212 | ) |
204 | 213 |
|
|
0 commit comments