Skip to main content

Installation

This document explains how to install and set up the ROCK development environment using both uv and pip. The project is a Reinforcement Open Construction Kit that supports various components.

Quick Install All Dependencies

# Install all dependencies including optional ones
uv sync --all-extras

# Install development/testing dependencies
uv sync --all-extras --all-groups

Install Different Dependency Groups

Core Dependencies Only

uv sync

Admin Component Dependencies

uv sync --extra admin

Rocklet Execution Environment Dependencies

uv sync --extra rocklet

All Dependencies at Once

uv sync --all-extras

Development/Testing Dependencies

uv sync --all-extras --group test

Using pip

Install from pip source

Core Dependencies Only

pip install rl-rock

Admin Component Dependencies

pip install "rl-rock[admin]"

Rocklet Execution Environment Dependencies

pip install "rl-rock[rocklet]"

Builder Dependencies

pip install "rl-rock[builder]"

Install All Optional Dependencies

pip install "rl-rock[all]"

Install with pip from source code

Core Dependencies Only

pip install .

Admin Component Dependencies

pip install ".[admin]"

Rocklet Execution Environment Dependencies

pip install ".[rocklet]"

Builder Dependencies

pip install ".[builder]"

Install All Optional Dependencies

pip install ".[all]"

Available Entry Points

The package provides the following command line scripts:

  • rocklet: ROCK execution environment server (rock.rocklet.server:main)
  • admin: Admin management server (rock.admin.main:main)
  • envhub: Environment hub server (rock.envhub.server:main)
  • rock: Main ROCK command line interface (rock.cli.main:main)

Development Setup

# Clone and set up development environment
git clone <repository>
cd ROCK
uv sync --all-extras --group test

# Run tests
uv run pytest

Using pip

# For development, install in editable mode with all extras
pip install -e ".[all]"

# Or separately
pip install -e .
pip install ".[admin]" ".[rocklet]" ".[builder]" # Optional extras

Additional Notes

  • The project is configured to use the Alibaba cloud PyPI mirror by default: https://mirrors.aliyun.com/pypi/simple/
  • For local development, running tests requires the test dependency group