mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-12-03 09:53:45 +00:00
The uv.lock file contains cached dependency resolutions that prevent source code changes from being picked up. By removing it before uv sync, we force a fresh resolution and rebuild of dependencies. This should fix the 73 CI test failures where the resolver was loading stale method signatures without the authorization parameter.
61 lines
2.3 KiB
YAML
61 lines
2.3 KiB
YAML
name: Setup runner
|
|
description: Prepare a runner for the tests (install uv, python, project dependencies, etc.)
|
|
inputs:
|
|
python-version:
|
|
description: The Python version to use
|
|
required: false
|
|
default: "3.12"
|
|
client-version:
|
|
description: The llama-stack-client-python version to test against (latest or published)
|
|
required: false
|
|
default: "latest"
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@6b9c6063abd6010835644d4c2e1bef4cf5cd0fca # v6.0.1
|
|
with:
|
|
python-version: ${{ inputs.python-version }}
|
|
version: 0.7.6
|
|
|
|
- name: Configure client installation
|
|
id: client-config
|
|
uses: ./.github/actions/install-llama-stack-client
|
|
with:
|
|
client-version: ${{ inputs.client-version }}
|
|
|
|
- name: Install dependencies
|
|
shell: bash
|
|
env:
|
|
UV_EXTRA_INDEX_URL: ${{ steps.client-config.outputs.uv-extra-index-url }}
|
|
run: |
|
|
# Export UV env vars for current step and persist to GITHUB_ENV for subsequent steps
|
|
if [ -n "$UV_EXTRA_INDEX_URL" ]; then
|
|
export UV_INDEX_STRATEGY=unsafe-best-match
|
|
echo "UV_EXTRA_INDEX_URL=$UV_EXTRA_INDEX_URL" >> $GITHUB_ENV
|
|
echo "UV_INDEX_STRATEGY=$UV_INDEX_STRATEGY" >> $GITHUB_ENV
|
|
echo "Exported UV environment variables for current and subsequent steps"
|
|
fi
|
|
|
|
echo "Clearing Python bytecode cache and lock file to ensure fresh install"
|
|
find . -type d -name "__pycache__" -exec rm -rf {} + 2>/dev/null || true
|
|
find . -name "*.pyc" -delete 2>/dev/null || true
|
|
rm -f uv.lock
|
|
|
|
echo "Syncing dependencies (will regenerate lock file)"
|
|
uv sync --all-groups
|
|
|
|
echo "Force reinstalling llama-stack from source to ensure latest changes"
|
|
uv pip install --force-reinstall --no-deps -e .
|
|
|
|
echo "Installing ad-hoc dependencies"
|
|
uv pip install faiss-cpu
|
|
|
|
# Install specific client version after sync if needed
|
|
if [ "${{ steps.client-config.outputs.install-after-sync }}" = "true" ]; then
|
|
echo "Installing llama-stack-client from: ${{ steps.client-config.outputs.install-source }}"
|
|
uv pip install ${{ steps.client-config.outputs.install-source }}
|
|
fi
|
|
|
|
echo "Installed llama packages"
|
|
uv pip list | grep llama
|