Skip to content

feat: initial v0.2.0 release #1

feat: initial v0.2.0 release

feat: initial v0.2.0 release #1

Workflow file for this run

name: ci
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
name: test (py${{ matrix.python }})
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python: ["3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
cache: pip
cache-dependency-path: pyproject.toml
- name: Install package + dev extras
run: |
python -m pip install --upgrade pip
pip install -e ".[dev]"
- name: Ruff (lint)
run: ruff check .
- name: Ruff (format check)
run: ruff format --check .
- name: pytest
run: pytest -ra -q
docker:
name: docker build smoke
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build image
uses: docker/build-push-action@v6
with:
context: .
file: docker/Dockerfile
push: false
tags: agno-dcp-demo:ci
load: true
- name: Smoke (boot + healthz)
run: |
docker run -d --name demo -p 8000:8000 agno-dcp-demo:ci
for i in {1..30}; do
if curl -sf http://127.0.0.1:8000/healthz > /dev/null; then
echo "Container ready after ${i}s"
break
fi
sleep 1
done
curl -sf http://127.0.0.1:8000/healthz
curl -sf http://127.0.0.1:8000/api/agent/info | python3 -m json.tool | head -10
docker logs demo
docker rm -f demo