Skip to content

Docker compose inclu9de #240

Docker compose inclu9de

Docker compose inclu9de #240

name: Integration Tests
on:
push:
branches: [ main, develop ]
paths:
- 'backends/advanced/src/**'
- 'backends/advanced/run-test.sh'
- '.github/workflows/integration-tests.yml'
pull_request:
branches: [ main, develop ]
paths:
- 'backends/advanced/src/**'
- 'backends/advanced/run-test.sh'
- '.github/workflows/integration-tests.yml'
jobs:
integration-tests:
runs-on: ubuntu-latest
timeout-minutes: 20
services:
docker:
image: docker:dind
options: --privileged
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Verify required secrets
env:
DEEPGRAM_API_KEY: ${{ secrets.DEEPGRAM_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: |
echo "Verifying required secrets..."
if [ -z "$DEEPGRAM_API_KEY" ]; then
echo "❌ ERROR: DEEPGRAM_API_KEY secret is not set"
exit 1
fi
if [ -z "$OPENAI_API_KEY" ]; then
echo "❌ ERROR: OPENAI_API_KEY secret is not set"
exit 1
fi
echo "✓ DEEPGRAM_API_KEY is set (length: ${#DEEPGRAM_API_KEY})"
echo "✓ OPENAI_API_KEY is set (length: ${#OPENAI_API_KEY})"
echo "✓ All required secrets verified"
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
version: "latest"
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install PortAudio dependencies
run: sudo apt-get update && sudo apt-get install -y portaudio19-dev
- name: Run Advanced Backend Integration Tests
env:
DEEPGRAM_API_KEY: ${{ secrets.DEEPGRAM_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: |
cd backends/advanced
chmod +x run-test.sh
./run-test.sh
- name: Upload test logs on failure
if: failure()
uses: actions/upload-artifact@v4
with:
name: integration-test-logs
path: |
backends/advanced/test_integration.log
backends/advanced/docker-compose-test.yml
backends/advanced/.env.test
retention-days: 7