Merge pull request #5 from Moonsong-Labs/ci/e2e-workflows #32
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 | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| jobs: | |
| build: | |
| name: Build (uv) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup uv and Python | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| enable-cache: true | |
| - name: Sync project dependencies (frozen) | |
| run: uv sync --frozen | |
| - name: Build package | |
| run: uv build | |
| ruff: | |
| name: Ruff Format | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup uv and Python | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| enable-cache: true | |
| - name: Sync project dependencies (frozen) | |
| run: uv sync --frozen | |
| - name: Check formatting | |
| run: uv run ruff format --check . | |
| pyrefly: | |
| name: Pyrefly Type Check | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup uv and Python | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| enable-cache: true | |
| - name: Sync project dependencies (frozen) | |
| run: uv sync --frozen | |
| - name: Type check | |
| run: uv run pyrefly check | |
| test: | |
| name: Run Tests | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup uv and Python | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| enable-cache: true | |
| - name: Sync project dependencies (frozen) | |
| run: uv sync --frozen | |
| - name: Run tests | |
| run: uv run pytest | |
| run_ex: | |
| name: Run example script | |
| runs-on: ubuntu-latest | |
| env: | |
| PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup uv and Python | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| enable-cache: true | |
| - name: Sync project dependencies (frozen) | |
| run: uv sync --frozen | |
| - run: uv run examples/02_get_market_price.py |