agent-orchestrator/.github/workflows/onboarding-test.yml

56 lines
1.4 KiB
YAML

name: Onboarding Integration Test
on:
pull_request:
paths:
- 'packages/**'
- 'scripts/setup.sh'
- 'tests/integration/**'
- '.github/workflows/onboarding-test.yml'
push:
branches:
- main
jobs:
onboarding-test:
name: Test Fresh Onboarding
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Build test image
working-directory: tests/integration
run: docker compose build
- name: Run onboarding test
id: test
working-directory: tests/integration
run: |
docker compose up --abort-on-container-exit --exit-code-from onboarding-test
- name: Extract metrics
if: always()
run: |
# Extract onboarding time from container logs
docker logs ao-onboarding-test 2>&1 | grep "Total onboarding time" || echo "Metrics not available"
- name: Cleanup
if: always()
working-directory: tests/integration
run: docker compose down -v
- name: Upload test logs
if: failure()
uses: actions/upload-artifact@v4
with:
name: onboarding-test-logs
path: |
tests/integration/*.log
retention-days: 7