import shlex
import subprocess
-from typing import List
+from typing import List, Optional
-def cmd_with_timeout(command: str, timeout_seconds: float) -> int:
+def cmd_with_timeout(command: str, timeout_seconds: Optional[float]) -> int:
return subprocess.check_call(
["/bin/bash", "-c", command], timeout=timeout_seconds
)
"""Run a command silently but raise subprocess.CalledProcessError if
it fails."""
subprocess.run(
- command, shell=True, stderr=subprocess.DEVNULL, stdout=subprocess.DEVNULL,
- capture_output=False, check=True
+ command, shell=True, stderr=subprocess.DEVNULL,
+ stdout=subprocess.DEVNULL, capture_output=False, check=True
)
-def cmd_in_background(command: str, *, silent: bool = False) -> subprocess.Popen:
+def cmd_in_background(
+ command: str, *, silent: bool = False
+) -> subprocess.Popen:
args = shlex.split(command)
if silent:
return subprocess.Popen(args,