|
- name: Checks
-
- on:
- push:
- branches:
- - main
- - staging
- pull_request:
- branches:
- - main
- - staging
-
- jobs:
- format:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - run: uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe fmt --check
- working-directory: ./python
-
- lint:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - run: uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe lint
- working-directory: ./python
-
- mypy:
- runs-on: ubuntu-latest
- strategy:
- matrix:
- package:
- [
- "./packages/autogen-core",
- "./packages/agbench",
- "./packages/autogen-ext",
- "./packages/autogen-agentchat",
- "./packages/magentic-one-cli",
- ]
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - run: uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe --directory ${{ matrix.package }} mypy
- working-directory: ./python
-
- pyright:
- runs-on: ubuntu-latest
- strategy:
- matrix:
- package:
- [
- "./packages/autogen-core",
- "./packages/agbench",
- "./packages/autogen-ext",
- "./packages/autogen-agentchat",
- "./packages/magentic-one-cli",
- ]
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - run: uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe --directory ${{ matrix.package }} pyright
- working-directory: ./python
-
- test:
- runs-on: ubuntu-latest
- strategy:
- matrix:
- package:
- [
- "./packages/autogen-core",
- "./packages/autogen-ext",
- "./packages/autogen-agentchat",
- ]
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - name: Run uv sync
- run: |
- uv sync --locked --all-extras
- echo "PKG_NAME=$(basename '${{ matrix.package }}')" >> $GITHUB_ENV
-
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe --directory ${{ matrix.package }} test
- working-directory: ./python
-
- - name: Move coverage file
- run: |
- mv ${{ matrix.package }}/coverage.xml coverage_${{ env.PKG_NAME }}.xml
- working-directory: ./python
-
- - name: Upload coverage artifact
- uses: actions/upload-artifact@v4
- with:
- name: coverage-${{ env.PKG_NAME }}
- path: ./python/coverage_${{ env.PKG_NAME }}.xml
-
- test-grpc:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - name: Run uv sync
- run: |
- uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe --directory ./packages/autogen-ext test-grpc
- working-directory: ./python
-
- - name: Move coverage file
- run: |
- mv ./packages/autogen-ext/coverage.xml coverage_autogen-ext-grpc.xml
- working-directory: ./python
-
- - name: Upload coverage artifact
- uses: actions/upload-artifact@v4
- with:
- name: coverage-autogen-ext-grpc
- path: ./python/coverage_autogen-ext-grpc.xml
-
- codecov:
- runs-on: ubuntu-latest
- needs: [test, test-grpc]
- strategy:
- matrix:
- package:
- [
- "./packages/autogen-core",
- "./packages/autogen-ext",
- "./packages/autogen-agentchat",
- "autogen-ext-grpc",
- ]
- steps:
- - uses: actions/checkout@v4
- - name: Set up environment
- run: |
- echo "PKG_NAME=$(basename '${{ matrix.package }}')" >> $GITHUB_ENV
- - uses: actions/checkout@v4
- - uses: actions/download-artifact@v4
- with:
- name: coverage-${{ env.PKG_NAME }}
- path: ./
- - uses: codecov/codecov-action@v5
- with:
- files: coverage_${{ env.PKG_NAME }}.xml
- flags: unittests
- name: codecov-umbrella
- fail_ci_if_error: true
- token: ${{ secrets.CODECOV_TOKEN }}
-
- docs:
- runs-on: ubuntu-latest
- strategy:
- matrix:
- package: ["./packages/autogen-core"]
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - run: uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe --directory ${{ matrix.package }} docs-check
- working-directory: ./python
-
- docs-example-check:
- runs-on: ubuntu-latest
- strategy:
- matrix:
- package: ["./packages/autogen-core"]
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - run: uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe --directory ${{ matrix.package }} docs-check-examples
- working-directory: ./python
-
- samples-code-check:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - run: uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe samples-code-check
- working-directory: ./python
-
- markdown-code-lint:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v3
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - run: uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe markdown-code-lint
- working-directory: ./python
-
- check-proto-changes-python:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - uses: astral-sh/setup-uv@v5
- with:
- enable-cache: true
- version: "0.5.18"
- - uses: actions/setup-python@v5
- with:
- python-version: "3.11"
- - run: uv sync --locked --all-extras
- working-directory: ./python
- - name: Run task
- run: |
- source ${{ github.workspace }}/python/.venv/bin/activate
- poe gen-proto
- poe gen-test-proto
- working-directory: ./python
- - name: Check if there are uncommited changes
- id: changes
- uses: UnicornGlobal/has-changes-action@v1.0.11
- - name: Process changes
- if: steps.changes.outputs.changed == 1
- run: echo "There are changes in the proto files. Please commit them."
|