Repository navigation
chore(deps): adopt unilab-rl 1.4.6 sac naming #1201
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| pull_request: | |
| branches: [main] | |
| types: [opened, synchronize, reopened, ready_for_review] | |
| paths-ignore: | |
| - "LICENSE" | |
| - ".github/CODEOWNERS" | |
| - ".github/ISSUE_TEMPLATE/**" | |
| - ".github/pull_request_template.md" | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.event.pull_request.number || github.ref_name }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| env: | |
| UV_FROZEN: "1" | |
| jobs: | |
| ruff-lint: | |
| if: github.event_name == 'workflow_dispatch' || github.event_name == 'pull_request' | |
| timeout-minutes: 5 | |
| runs-on: ubuntu-slim | |
| steps: | |
| - uses: actions/checkout@v6.0.2 | |
| with: | |
| ref: ${{ github.event_name == 'workflow_dispatch' && github.ref || format('refs/pull/{0}/merge', github.event.pull_request.number) }} | |
| persist-credentials: false | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.0.0 | |
| with: | |
| enable-cache: true | |
| - name: Install dependencies(only dev group) | |
| run: uv sync --only-group dev | |
| - name: Check | |
| run: uv run --no-sync ruff check --output-format=github . | |
| ruff-format: | |
| if: github.event_name == 'workflow_dispatch' || github.event_name == 'pull_request' | |
| timeout-minutes: 5 | |
| runs-on: ubuntu-slim | |
| steps: | |
| - uses: actions/checkout@v6.0.2 | |
| with: | |
| ref: ${{ github.event_name == 'workflow_dispatch' && github.ref || format('refs/pull/{0}/merge', github.event.pull_request.number) }} | |
| persist-credentials: false | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.0.0 | |
| with: | |
| enable-cache: true | |
| - name: Install dependencies(only dev group) | |
| run: uv sync --only-group dev | |
| - name: Check | |
| run: uv run --no-sync ruff format --check . | |
| mypy: | |
| if: github.event_name == 'workflow_dispatch' || github.event_name == 'pull_request' | |
| timeout-minutes: 10 | |
| runs-on: ubuntu-slim | |
| steps: | |
| - uses: actions/checkout@v6.0.2 | |
| with: | |
| ref: ${{ github.event_name == 'workflow_dispatch' && github.ref || format('refs/pull/{0}/merge', github.event.pull_request.number) }} | |
| persist-credentials: false | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.0.0 | |
| with: | |
| enable-cache: true | |
| - name: Install dependencies | |
| run: | | |
| uv sync \ | |
| --no-install-package torch \ | |
| --no-install-package nvidia-cublas-cu12 \ | |
| --no-install-package nvidia-cuda-cupti-cu12 \ | |
| --no-install-package nvidia-cuda-nvrtc-cu12 \ | |
| --no-install-package nvidia-cuda-runtime-cu12 \ | |
| --no-install-package nvidia-cudnn-cu12 \ | |
| --no-install-package nvidia-cufft-cu12 \ | |
| --no-install-package nvidia-cufile-cu12 \ | |
| --no-install-package nvidia-curand-cu12 \ | |
| --no-install-package nvidia-cusolver-cu12 \ | |
| --no-install-package nvidia-cusparse-cu12 \ | |
| --no-install-package nvidia-cusparselt-cu12 \ | |
| --no-install-package nvidia-nccl-cu12 \ | |
| --no-install-package nvidia-nvjitlink-cu12 \ | |
| --no-install-package nvidia-nvtx-cu12 \ | |
| --no-install-package triton | |
| uv pip install torch==2.10.0 --index-url https://download.pytorch.org/whl/cpu | |
| - name: Check | |
| run: uv run --no-sync mypy src/unilab | |
| pyright: | |
| if: github.event_name == 'workflow_dispatch' || github.event_name == 'pull_request' | |
| timeout-minutes: 10 | |
| runs-on: ubuntu-slim | |
| steps: | |
| - uses: actions/checkout@v6.0.2 | |
| with: | |
| ref: ${{ github.event_name == 'workflow_dispatch' && github.ref || format('refs/pull/{0}/merge', github.event.pull_request.number) }} | |
| persist-credentials: false | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.0.0 | |
| with: | |
| enable-cache: true | |
| - name: Install dependencies | |
| run: | | |
| uv sync \ | |
| --no-install-package torch \ | |
| --no-install-package nvidia-cublas-cu12 \ | |
| --no-install-package nvidia-cuda-cupti-cu12 \ | |
| --no-install-package nvidia-cuda-nvrtc-cu12 \ | |
| --no-install-package nvidia-cuda-runtime-cu12 \ | |
| --no-install-package nvidia-cudnn-cu12 \ | |
| --no-install-package nvidia-cufft-cu12 \ | |
| --no-install-package nvidia-cufile-cu12 \ | |
| --no-install-package nvidia-curand-cu12 \ | |
| --no-install-package nvidia-cusolver-cu12 \ | |
| --no-install-package nvidia-cusparse-cu12 \ | |
| --no-install-package nvidia-cusparselt-cu12 \ | |
| --no-install-package nvidia-nccl-cu12 \ | |
| --no-install-package nvidia-nvjitlink-cu12 \ | |
| --no-install-package nvidia-nvtx-cu12 \ | |
| --no-install-package triton | |
| uv pip install torch==2.10.0 --index-url https://download.pytorch.org/whl/cpu | |
| - name: Check | |
| run: uv run --no-sync pyright | |
| benchmark-smoke: | |
| if: github.event_name == 'workflow_dispatch' || github.event_name == 'pull_request' | |
| timeout-minutes: 10 | |
| runs-on: ubuntu-slim | |
| steps: | |
| - uses: actions/checkout@v6.0.2 | |
| with: | |
| ref: ${{ github.event_name == 'workflow_dispatch' && github.ref || format('refs/pull/{0}/merge', github.event.pull_request.number) }} | |
| persist-credentials: false | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.0.0 | |
| with: | |
| enable-cache: true | |
| python-version: '3.11' | |
| - name: Install dependencies | |
| run: | | |
| uv sync --extra mujoco \ | |
| --no-install-package torch \ | |
| --no-install-package nvidia-cublas-cu12 \ | |
| --no-install-package nvidia-cuda-cupti-cu12 \ | |
| --no-install-package nvidia-cuda-nvrtc-cu12 \ | |
| --no-install-package nvidia-cuda-runtime-cu12 \ | |
| --no-install-package nvidia-cudnn-cu12 \ | |
| --no-install-package nvidia-cufft-cu12 \ | |
| --no-install-package nvidia-cufile-cu12 \ | |
| --no-install-package nvidia-curand-cu12 \ | |
| --no-install-package nvidia-cusolver-cu12 \ | |
| --no-install-package nvidia-cusparse-cu12 \ | |
| --no-install-package nvidia-cusparselt-cu12 \ | |
| --no-install-package nvidia-nccl-cu12 \ | |
| --no-install-package nvidia-nvjitlink-cu12 \ | |
| --no-install-package nvidia-nvtx-cu12 \ | |
| --no-install-package triton | |
| uv pip install torch==2.10.0 --index-url https://download.pytorch.org/whl/cpu | |
| - name: Benchmark entrypoint smoke test | |
| run: uv run --no-sync python scripts/benchmark/smoke_test.py | |
| test: | |
| if: github.event_name == 'workflow_dispatch' || github.event_name == 'pull_request' | |
| # The merged manager-based suite needs ~20 min on ubuntu-slim; 15 min | |
| # cancels the step at ~60%. | |
| timeout-minutes: 30 | |
| strategy: | |
| matrix: | |
| os: [ubuntu-slim] | |
| # python-version: ['3.10', '3.11', '3.12', '3.13'] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v6.0.2 | |
| with: | |
| ref: ${{ github.event_name == 'workflow_dispatch' && github.ref || format('refs/pull/{0}/merge', github.event.pull_request.number) }} | |
| persist-credentials: false | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.0.0 | |
| with: | |
| enable-cache: true | |
| # python-version: ${{ matrix.python-version }} | |
| python-version: '3.11' | |
| - name: Install system dependencies | |
| run: sudo apt-get update && sudo apt-get install -y libwayland-client0 | |
| - name: Install dependencies | |
| run: | | |
| uv sync --extra mujoco --extra mjwarp \ | |
| --no-install-package torch \ | |
| --no-install-package nvidia-cublas-cu12 \ | |
| --no-install-package nvidia-cuda-cupti-cu12 \ | |
| --no-install-package nvidia-cuda-nvrtc-cu12 \ | |
| --no-install-package nvidia-cuda-runtime-cu12 \ | |
| --no-install-package nvidia-cudnn-cu12 \ | |
| --no-install-package nvidia-cufft-cu12 \ | |
| --no-install-package nvidia-cufile-cu12 \ | |
| --no-install-package nvidia-curand-cu12 \ | |
| --no-install-package nvidia-cusolver-cu12 \ | |
| --no-install-package nvidia-cusparse-cu12 \ | |
| --no-install-package nvidia-cusparselt-cu12 \ | |
| --no-install-package nvidia-nccl-cu12 \ | |
| --no-install-package nvidia-nvjitlink-cu12 \ | |
| --no-install-package nvidia-nvtx-cu12 \ | |
| --no-install-package triton | |
| uv pip install torch==2.10.0 --index-url https://download.pytorch.org/whl/cpu | |
| - name: Cache robot assets | |
| uses: actions/cache@v4.2.3 | |
| with: | |
| path: src/unilab/assets/robots | |
| key: ${{ runner.os }}-robot-assets-v1-${{ hashFiles('src/unilab/assets/hub.py') }} | |
| - name: Keep git-tracked assets at the checked-out commit | |
| # The robots cache persists HF-downloaded meshes across runs, but it | |
| # also snapshots git-tracked scene XMLs and would silently roll them | |
| # back to the cached revision. Restore tracked files from the index; | |
| # untracked downloads stay untouched. | |
| run: git restore --worktree -- src/unilab/assets/robots | |
| - name: Pull robot assets | |
| run: uv run --no-sync unilab-pull-assets --robot all | |
| - name: Test with coverage | |
| run: uv run --no-sync pytest -m "not slow" --cov=src/unilab --cov-report "markdown-append:${GITHUB_STEP_SUMMARY:-/dev/null}" --cov-fail-under=25 |