update .readthedocs.yml

This commit is contained in:
Taylor Howell
2026-04-23 18:12:46 +01:00
parent c52d3d0789
commit f0b6120771
+50 -6
View File
@@ -11,21 +11,65 @@ build:
os: ubuntu-24.04
tools:
python: "3.12"
apt_packages:
- libgl-dev
jobs:
create_environment:
# install uv
- asdf plugin add uv
- asdf install uv latest
- asdf global uv latest
- uv venv $READTHEDOCS_VIRTUALENV_PATH
- UV_PROJECT_ENVIRONMENT=$READTHEDOCS_VIRTUALENV_PATH uv pip install -r doc/requirements.txt
- UV_PROJECT_ENVIRONMENT=$READTHEDOCS_VIRTUALENV_PATH uv pip install mujoco mujoco-mjx
# replace mujoco.mjx.third_party.mujoco_warp import paths with mujoco_warp
# install doc requirements and build tools
- |
find mjx/mujoco/mjx/third_party/mujoco_warp -type f -exec sed -i 's/mujoco\.mjx\.third_party\.mujoco_warp/mujoco_warp/g' {} \;
UV_PROJECT_ENVIRONMENT=$READTHEDOCS_VIRTUALENV_PATH \
uv pip install \
-r doc/requirements.txt \
cmake pip build setuptools absl-py
# build and install MuJoCo C library
- |
VENV=$READTHEDOCS_VIRTUALENV_PATH && \
$VENV/bin/cmake -B build \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=$VENV \
-DMUJOCO_BUILD_EXAMPLES=OFF \
-DMUJOCO_BUILD_SIMULATE=OFF \
-DMUJOCO_BUILD_TESTS=OFF \
-DMUJOCO_TEST_PYTHON_UTIL=OFF && \
$VENV/bin/cmake --build build --parallel && \
$VENV/bin/cmake --install build
# copy plugins
- |
mkdir -p $READTHEDOCS_VIRTUALENV_PATH/mujoco_plugin && \
cp build/lib/libactuator.* \
build/lib/libelasticity.* \
build/lib/libsensor.* \
$READTHEDOCS_VIRTUALENV_PATH/mujoco_plugin/ && \
cp build/lib/libsdf_plugin.* \
$READTHEDOCS_VIRTUALENV_PATH/mujoco_plugin/ || true
# build and install Python bindings from source
- |
export VIRTUAL_ENV=$READTHEDOCS_VIRTUALENV_PATH \
PATH=$READTHEDOCS_VIRTUALENV_PATH/bin:$PATH && \
cd python && bash make_sdist.sh && cd dist && \
MUJOCO_PATH=$READTHEDOCS_VIRTUALENV_PATH \
MUJOCO_PLUGIN_PATH=$READTHEDOCS_VIRTUALENV_PATH/mujoco_plugin \
MUJOCO_CMAKE_ARGS="-DCMAKE_INTERPROCEDURAL_OPTIMIZATION:BOOL=OFF \
-DGLFW_BUILD_WAYLAND=OFF -DGLFW_BUILD_X11=OFF" \
UV_PROJECT_ENVIRONMENT=$READTHEDOCS_VIRTUALENV_PATH \
uv pip install mujoco-*.tar.gz && \
cd ../..
# install mjx and mujoco_warp
- UV_PROJECT_ENVIRONMENT=$READTHEDOCS_VIRTUALENV_PATH uv pip install -e mjx
- |
find mjx/mujoco/mjx/third_party/mujoco_warp -type f -exec \
sed -i 's/mujoco\.mjx\.third_party\.mujoco_warp/mujoco_warp/g' {} \;
- python doc/mjwarp/update_types.py mjx/mujoco/mjx/third_party/mujoco_warp/_src/types.py
- UV_PROJECT_ENVIRONMENT=$READTHEDOCS_VIRTUALENV_PATH uv pip install mjx/mujoco/mjx/third_party/mujoco_warp
- |
UV_PROJECT_ENVIRONMENT=$READTHEDOCS_VIRTUALENV_PATH \
uv pip install mjx/mujoco/mjx/third_party/mujoco_warp
install:
- "true" # skip
- "true" # skip default install
sphinx:
builder: html