name: ray on: # Trigger the workflow on push or pull request, # but only for the main branch push: branches: - main - v0.2.x paths: - "verl/single_controller/*.py" - .github/workflows/ray_test.yml pull_request: branches: - main - v0.2.x paths: - "verl/single_controller/*.py" - .github/workflows/ray_test.yml - "!recipe/**" # Cancel jobs on the same ref if a new one is triggered concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} # Declare permissions just read content. permissions: contents: read jobs: ray: runs-on: [L20x8] timeout-minutes: 10 # Increase this timeout value as needed env: HTTP_PROXY: ${{ secrets.PROXY_HTTP }} HTTPS_PROXY: ${{ secrets.PROXY_HTTPS }} NO_PROXY: "localhost,127.0.0.1" HF_HUB_ENABLE_HF_TRANSFER: "0" # This is more stable container: image: whatcanyousee/verl:ngc-th2.6.0-cu124-vllm0.8.2-mcore0.11.0-te2.0 options: --gpus all --shm-size=10g steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: fetch-depth: 0 - name: Install the current repository run: | pip install -e .[test] pip install --upgrade "ray>=2.40.0" - name: Running ray tests that need 8 GPUs run: | cd tests/ray pytest -s -x --ignore=test_check_worker_alive.py --ignore=test_rvdz.py .