Replace Poetry with UV #1730
This file contains 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: Test Docs | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
jobs: | |
release: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.11"] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install system dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y graphviz libcairo2-dev xdg-utils | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Cache UV virtualenv | |
uses: actions/cache@v2 | |
with: | |
path: | | |
~/.cache/uv | |
~/.uv | |
.venv | |
key: ${{ runner.os }}-uv-${{ hashFiles('**/requirements*.txt') }} | |
restore-keys: | | |
${{ runner.os }}-uv- | |
- name: Install UV | |
run: | | |
if [ "$RUNNER_OS" == "Windows" ]; then | |
curl -LsSf https://astral.sh/uv/install.sh | sh | |
echo "$HOME/.local/bin" >> $GITHUB_PATH | |
elif [ "$RUNNER_OS" == "macOS" ]; then | |
curl -LsSf https://astral.sh/uv/install.sh | sh | |
echo "$HOME/Library/Application Support/uv/bin" >> $GITHUB_PATH | |
else | |
curl -LsSf https://astral.sh/uv/install.sh | sh | |
echo "$HOME/.local/bin" >> $GITHUB_PATH | |
fi | |
- name: Create and activate venv | |
run: | | |
python -m venv .venv | |
if [ "$RUNNER_OS" == "Windows" ]; then | |
. .venv/Scripts/activate | |
else | |
. .venv/bin/activate | |
fi | |
shell: bash | |
- name: Install dependencies | |
run: | | |
which uv | |
uv pip install -e ".[test-docs,anthropic,groq,cohere,mistralai,litellm,google-generativeai,vertexai,cerebras_cloud_sdk,fireworks-ai]" --system | |
uv pip install -r requirements-dev.txt --system | |
uv pip install -r requirements-doc.txt --system | |
shell: bash | |
- name: Run tests | |
run: pytest tests/llm/test_openai/docs | |
env: | |
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} |