fix: replace pixi with standard Python setup in test-matrix workflow #173
This file contains hidden or 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: Status Check | |
| on: | |
| push: | |
| branches: [ feature/* ] | |
| workflow_dispatch: | |
| jobs: | |
| quick-check: | |
| name: Quick Status Check | |
| runs-on: ubuntu-latest | |
| env: | |
| PIXI_ENV: ci # Ensure pixi targets the 'ci' environment | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Setup pixi | |
| uses: prefix-dev/setup-pixi@v0.8.10 | |
| with: | |
| pixi-version: v0.49.0 | |
| cache: false # Temporarily disable during GitHub cache service outage | |
| manifest-path: pyproject.toml | |
| - name: Install dependencies (pixi) with retry and fallback | |
| run: | | |
| n=0 | |
| until [ "$n" -ge 3 ] | |
| do | |
| # Try locked first, then fallback to update if needed | |
| if pixi install; then # PIXI_ENV will make this target 'ci' | |
| echo "✅ Installation successful" | |
| break | |
| elif [ "$n" -eq 2 ]; then | |
| echo "⚠️ Install failed, retrying..." | |
| pixi install && break # PIXI_ENV will make this target 'ci' | |
| fi | |
| n=$((n+1)) | |
| echo "pixi install failed, retrying ($n/3)..." | |
| sleep 5 | |
| done | |
| - name: Activate pixi environment | |
| run: | | |
| eval "$(pixi shell --env-hook bash)" | |
| - name: Install project dependencies | |
| run: | | |
| pixi run ci-install | |
| - name: Quick smoke test | |
| run: | | |
| echo "🚀 UCKN Framework Quick Check" | |
| # Check basic structure | |
| echo "📁 Checking project structure..." | |
| test -d "src/uckn" || (echo "❌ Missing src/uckn" && exit 1) | |
| test -f "src/uckn/__init__.py" || (echo "❌ Missing __init__.py" && exit 1) | |
| test -d "src/uckn/core/atoms" || (echo "❌ Missing atoms" && exit 1) | |
| test -d "src/uckn/core/molecules" || (echo "❌ Missing molecules" && exit 1) | |
| test -d "src/uckn/core/organisms" || (echo "❌ Missing organisms" && exit 1) | |
| echo "✅ Structure valid" | |
| # Quick import test | |
| echo "🔍 Testing imports..." | |
| pixi run python -c " | |
| try: | |
| import sys | |
| sys.path.insert(0, 'src') | |
| from uckn import KnowledgeManager | |
| print('✅ KnowledgeManager import successful') | |
| except Exception as e: | |
| print(f'❌ Import failed: {e}') | |
| exit(1) | |
| " | |
| # Basic lint check | |
| echo "🔍 Quick lint check..." | |
| pixi run ruff check src/ --select=F,E9 --quiet || echo "⚠️ Some lint issues found" | |
| echo "✅ Critical lint check completed" | |
| echo "🎉 Quick check passed!" |