-
Notifications
You must be signed in to change notification settings - Fork 3k
Fixes curobo dockerfile for CI runs #4462
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixes curobo dockerfile for CI runs #4462
Conversation
|
@njawale42 I had to add in some hacks to the curobo dockerfile to get CI running again. Could you please look into how we can redesign this dockerfile nicely to avoid the conflicts and build upon the base container? I think we might also want to think about extending the cuda support to cuda 13 as well. |
Greptile OverviewGreptile SummaryThis PR adds temporary fixes to the curobo dockerfile to resolve CI build failures caused by PyTorch conflicts between Isaac Sim's pre-bundled version and cuRobo's requirements. Key changes:
Notes:
Confidence Score: 3/5
Important Files Changed
Sequence DiagramsequenceDiagram
participant Base as Base Image
participant Docker as Dockerfile Build
participant CUDA as CUDA Installation
participant Torch as PyTorch/Torch
participant Isaac as Isaac Lab
participant CuRobo as cuRobo
Base->>Docker: Start from Isaac Sim base image
Docker->>CUDA: Install CUDA toolkit 12.8
CUDA->>CUDA: Install libcudnn9-cuda-12
CUDA->>CUDA: Install libcusparselt0
CUDA->>CUDA: Install libnccl2, libnccl-dev
CUDA->>CUDA: Install libnvjitlink-12-8
Docker->>Isaac: Copy Isaac Lab directory
Docker->>Torch: Remove pre-bundled torch from Isaac Sim
Note over Torch: HACK: Forces fresh torch install
Docker->>Isaac: Run isaaclab.sh --install
Isaac->>Torch: Install PyTorch to site-packages
Docker->>Isaac: Uninstall quadprog
Note over Isaac: HACK: Prevents RL framework conflicts
Docker->>CuRobo: Install cuRobo from source
CuRobo->>CUDA: Use CUDA 12.8 environment
CuRobo->>Torch: Link with PyTorch
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
2 files reviewed, 2 comments
| # HACK: Remove pre-bundled torch BEFORE installing Isaac Lab dependencies. | ||
| # This forces isaaclab.sh --install to install torch fresh to site-packages, | ||
| # rather than skipping because it detects the pre-bundled version. | ||
| RUN rm -rf ${ISAACSIM_ROOT_PATH}/exts/omni.isaac.ml_archive/pip_prebundle/torch* |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The rm -rf deletion is brittle - if the path structure changes in future Isaac Sim versions, this will silently fail. Consider adding a check to verify the deletion succeeded or at least log a warning if the path doesn't exist.
| # HACK: Uninstall quadprog as it causes issues with some reinforcement learning frameworks | ||
| RUN ${ISAACLAB_PATH}/isaaclab.sh -p -m pip uninstall -y quadprog |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Verify that uninstalling quadprog doesn't break any Isaac Lab features installed in the previous step
Description
The curobo dockerfile recently stopped working and somehow messes with the python/pip builds in the docker image when trying to perform any downstream commands. There could also be some conflicts with the curobo installation and the pytorch build that comes with Isaac Sim.
This change adds in some hacks to the dockerfile to get it working so that we can run the CI tests again. We should look into fixing this dockerfile properly.
Type of change
Checklist
pre-commitchecks with./isaaclab.sh --formatconfig/extension.tomlfileCONTRIBUTORS.mdor my name already exists there