Skip to content

Fix Go module path to match subdirectory structure #79

Fix Go module path to match subdirectory structure

Fix Go module path to match subdirectory structure #79

Workflow file for this run

name: CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
permissions:
contents: read
jobs:
java-build:
runs-on: ubuntu-latest
strategy:
matrix:
java-version: [ 17, 21 ]
steps:
- uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java-version }}
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java-version }}
distribution: temurin
cache: gradle
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build
run: ./gradlew build
- name: Upload test reports
if: failure()
uses: actions/upload-artifact@v4
with:
name: test-reports-jdk${{ matrix.java-version }}
path: '**/build/reports/tests/'
retention-days: 7
go-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.24'
cache-dependency-path: agenttel-go/go.sum
- name: Run tests
working-directory: agenttel-go
run: go test -race -count=1 -timeout=120s ./...
- name: Test GenAI Anthropic
working-directory: agenttel-go/genai/anthropic
run: go test -race -count=1 -timeout=60s ./...
- name: Test GenAI OpenAI
working-directory: agenttel-go/genai/openai
run: go test -race -count=1 -timeout=60s ./...
- name: Vet
working-directory: agenttel-go
run: go vet ./...
node-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install shared types
working-directory: agenttel-types
run: npm ci
- name: Typecheck shared types
working-directory: agenttel-types
run: npx tsc --noEmit
- name: Install Node.js SDK
working-directory: agenttel-node
run: npm ci
- name: Typecheck
working-directory: agenttel-node
run: npx tsc --noEmit
- name: Run tests
working-directory: agenttel-node
run: npx vitest run
python-test:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.11', '3.12', '3.13']
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
working-directory: agenttel-python
run: pip install -e ".[dev]"
- name: Lint
working-directory: agenttel-python
run: |
pip install ruff
ruff check src/ tests/
- name: Run tests
working-directory: agenttel-python
run: pytest -v
attribute-parity:
runs-on: ubuntu-latest
needs: [go-test, node-test, python-test]
continue-on-error: true
steps:
- uses: actions/checkout@v4
- name: Install jq
run: sudo apt-get install -y jq
- name: Validate attribute parity
run: bash scripts/validate-attributes.sh