fix(docker): add libero_plus install workaround to generic Dockerfile.benchmark

The generic Dockerfile.benchmark was using a plain `uv pip install ".[libero_plus]"`
which silently fails to make `libero` importable due to an upstream LIBERO-plus
packaging bug. Port the dedicated clone + .pth workaround from
Dockerfile.eval-libero-plus so `docker build --build-arg BENCHMARK=libero_plus`
produces working containers.

Also fix eval worker using nonexistent `parser.parse()` — use `draccus.parse()`.

Made-with: Cursor
This commit is contained in:
Pepijn Kooijmans
2026-03-23 18:31:57 +01:00
parent 8633608d26
commit e52e7e644a
3 changed files with 61 additions and 5 deletions

View File

@@ -39,10 +39,10 @@ import urllib.request
from dataclasses import dataclass, field
from pathlib import Path
import draccus
import numpy as np
from lerobot import envs # noqa: F401 — registers all env subclasses
from lerobot.configs import parser
from lerobot.envs.configs import EnvConfig
from lerobot.envs.factory import make_env
from lerobot.envs.utils import add_envs_task, preprocess_observation
@@ -184,7 +184,7 @@ def worker_main(cfg: EvalWorkerConfig) -> None:
def main() -> None:
init_logging()
cfg = parser.parse(EvalWorkerConfig)
cfg = draccus.parse(config_class=EvalWorkerConfig)
worker_main(cfg)