ailixir-api / .github /workflows /api-tests-hf.yml
AILIXIR Bot
Auto-sync: 201d269f287526269b8ffded5f450ff36b46c740
907b200
Raw
History Blame Contribute Delete
1.6 kB
name: AILIXIR API Tests (HF Spaces)
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
schedule:
- cron: "0 6 * * *"
workflow_dispatch:
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install test dependencies
run: pip install -r requirements.txt
- name: Wake up HF Space
run: |
echo "Waiting for ailixir-api HF Space to be ready..."
for i in $(seq 1 60); do
if curl -sf https://Ailixir-AI-Team-ailixir-api.hf.space/ > /dev/null 2>&1; then
echo "ailixir-api is up"
sleep 5
exit 0
fi
echo "Attempt $i/60: not ready yet..."
sleep 5
done
echo "ailixir-api failed to become healthy in time"
exit 1
- name: Run API tests
env:
BASE_URL: https://Ailixir-AI-Team-ailixir-api.hf.space/api
TEST_EMAIL: test@example.com
TEST_PASSWORD: password123
TEST_NAME: testuser
run: |
python -m pytest tests/ -v --tb=short --junitxml=junit.xml || true
- name: Upload test results
uses: actions/upload-artifact@v4
if: always()
with:
name: test-results-hf
path: junit.xml
- name: Test Summary
uses: test-summary/action@v2
with:
paths: junit.xml
if: always()