Files
dragonpilot/selfdrive/test/process_replay/helpers.py
Lukas Petersson d6fb78b9a3 process replay: prefix setup in helper (#24636)
* prefix setup in helper

* context manager

* name change + none default

* skip checking prefix

* type hints + unset env
2022-05-24 12:33:59 -07:00

27 lines
764 B
Python

import os
import shutil
import uuid
from common.params import Params
class OpenpilotPrefix(object):
def __init__(self, prefix: str = None) -> None:
self.prefix = prefix if prefix else str(uuid.uuid4())
self.msgq_path = os.path.join('/dev/shm', self.prefix)
def __enter__(self):
os.environ['OPENPILOT_PREFIX'] = self.prefix
try:
os.mkdir(self.msgq_path)
except FileExistsError:
pass
def __exit__(self, exc_type, exc_obj, exc_tb):
symlink_path = Params().get_param_path()
if os.path.exists(symlink_path):
shutil.rmtree(os.path.realpath(symlink_path), ignore_errors=True)
os.remove(symlink_path)
shutil.rmtree(self.msgq_path, ignore_errors=True)
del os.environ['OPENPILOT_PREFIX']
return True