Fix Python setup in WSL workflow with proper system-wide installations

This commit is contained in:
openhands
2024-11-12 04:09:35 +00:00
parent 1ed8628220
commit 9296a47ec1

View File

@@ -32,41 +32,43 @@ jobs:
- name: Set up Python in WSL
shell: wsl-bash {0}
run: |
# Update package list and install software-properties-common
sudo apt-get update
sudo apt-get install -y software-properties-common
# Install Python 3.12 from deadsnakes PPA
sudo add-apt-repository ppa:deadsnakes/ppa -y
sudo apt-get update
sudo apt-get install -y python3.12 python3.12-venv python3.12-dev python3.12-distutils
# Create symlinks for python3.12
sudo ln -sf /usr/bin/python3.12 /usr/local/bin/python3
sudo ln -sf /usr/bin/python3.12 /usr/local/bin/python
# Install pip for Python 3.12
curl -sS https://bootstrap.pypa.io/get-pip.py | python3.12
curl -sS https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo python3.12 get-pip.py
sudo ln -sf /usr/local/bin/pip3.12 /usr/local/bin/pip3
sudo ln -sf /usr/local/bin/pip3.12 /usr/local/bin/pip
# Install pipx
python3.12 -m pip install --user pipx
python3.12 -m pipx ensurepath
# Add local bin to PATH
export PATH="/root/.local/bin:$PATH"
sudo pip3 install pipx
pipx ensurepath
# Install poetry via pipx
pipx install poetry
- name: Install Python dependencies using Poetry
shell: wsl-bash {0}
run: |
export PATH="/root/.local/bin:$PATH"
poetry install --without evaluation,llama-index
run: poetry install --without evaluation,llama-index
- name: Build Environment
shell: wsl-bash {0}
run: |
export PATH="/root/.local/bin:$PATH"
make build
run: make build
- name: Run Tests
shell: wsl-bash {0}
run: |
export PATH="/root/.local/bin:$PATH"
poetry run pytest --forked --cov=openhands --cov-report=xml -svv ./tests/unit --ignore=tests/unit/test_memory.py
run: poetry run pytest --forked --cov=openhands --cov-report=xml -svv ./tests/unit --ignore=tests/unit/test_memory.py
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4