Skip to content
Snippets Groups Projects

Introduce Nox for Local and CI Test Automation. Start Writing a Contributors Guide.

Merged Frederik Hennig requested to merge fhennig/nox into v2.0-dev
1 file
+ 11
6
Compare changes
  • Side-by-side
  • Inline
+ 11
6
@@ -4,21 +4,26 @@ from typing import Sequence
import os
import nox
import subprocess
import re
nox.options.sessions = ["lint", "typecheck", "testsuite"]
def get_cuda_version() -> None | tuple[int, ...]:
smi_args = ["nvidia-smi", "--version"]
query_args = ["nvcc", "--version"]
try:
result = subprocess.run(smi_args, capture_output=True)
query_result = subprocess.run(query_args, capture_output=True)
except FileNotFoundError:
return None
smi_output = str(result.stdout).splitlines()
cuda_version = smi_output[-1].split(":")[1].strip()
return tuple(int(v) for v in cuda_version.split("."))
matches = re.findall(r"release \d+\.\d+", str(query_result.stdout))
if matches:
match = matches[0]
version_string = match.split()[-1]
return tuple(int(v) for v in version_string.split("."))
else:
return None
def editable_install(session: nox.Session, opts: Sequence[str] = ()):
Loading