fix(docker): bypass uv extras chain bug in libero_plus Dockerfile

uv silently skips packages when resolving a nested extras chain
(lerobot[libero_plus] -> lerobot[libero] -> hf-libero -> robosuite).
POST-INSTALL grep confirmed robosuite absent after install despite uv
reporting 'Resolved 113 packages, Installed 1'.

Fix: install all libero_plus deps directly by name, bypassing the extras
chain entirely. Also add --plain flag to build script for verbose output.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Pepijn
2026-03-22 21:12:26 -07:00
parent 418791ebba
commit e54e582a6f
2 changed files with 21 additions and 8 deletions
+4
View File
@@ -27,6 +27,7 @@ PUSH=false
HUB_ORG=""
BENCHMARKS="libero libero_plus robomme robocasa"
NO_CACHE_BASE=false
PROGRESS="auto"
for arg in "$@"; do
case "$arg" in
@@ -34,6 +35,7 @@ for arg in "$@"; do
--hub_org=*) HUB_ORG="${arg#*=}" ;;
--benchmarks=*) BENCHMARKS="${arg#*=}" ;;
--no-cache-base) NO_CACHE_BASE=true ;;
--plain) PROGRESS="plain" ;;
*) echo "Unknown arg: $arg"; exit 1 ;;
esac
done
@@ -57,6 +59,7 @@ fi
echo "=== Building lerobot-eval-base ==="
docker build \
${BASE_CACHE_FLAG} \
--progress="${PROGRESS}" \
-f "${SCRIPT_DIR}/Dockerfile.eval-base" \
-t lerobot-eval-base:latest \
"${REPO_ROOT}" || fail "lerobot-eval-base build failed"
@@ -80,6 +83,7 @@ for BENCHMARK in $BENCHMARKS; do
echo ""
echo "=== Building ${LOCAL_TAG} from $(basename ${DOCKERFILE}) ==="
docker build \
--progress="${PROGRESS}" \
-f "${DOCKERFILE}" \
-t "${LOCAL_TAG}" \
"${REPO_ROOT}" || fail "${LOCAL_TAG} build failed"