Fix GPU config: lazy initialization to avoid import-time error #39
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: CI/CD | |
| on: | |
| push: | |
| branches: | |
| - main | |
| paths: | |
| - 'src/**' | |
| - 'tests/**' | |
| - '*.py' | |
| - 'requirements.txt' | |
| - 'pyproject.toml' | |
| - 'Dockerfile' | |
| - '.github/workflows/ci-cd.yml' | |
| tags: | |
| - 'v*' | |
| jobs: | |
| deploy: | |
| name: Deploy | |
| runs-on: ubuntu-latest | |
| env: | |
| MODAL_TOKEN_ID: ${{ secrets.MODAL_TOKEN_ID }} | |
| MODAL_TOKEN_SECRET: ${{ secrets.MODAL_TOKEN_SECRET }} | |
| steps: | |
| - name: Checkout Repository | |
| uses: actions/checkout@v4 | |
| - name: Install Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.10" | |
| - name: Install Dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install modal httpx fastapi pytest pytest-asyncio | |
| - name: Run tests | |
| run: pytest tests/ -v | |
| - name: Lint with ruff | |
| run: | | |
| pip install ruff | |
| ruff check app.py | |
| - name: Deploy job | |
| run: | | |
| modal deploy app.py |