Fix Dependencies (#979) #1
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Debian R2R Docker Build and Integration Test (Debian GNU/Linux 12 (bookworm) amd64) | |
on: | |
push: | |
branches: | |
- '**' | |
workflow_dispatch: | |
jobs: | |
build-and-test: | |
runs-on: [ self-hosted, Linux ] | |
permissions: | |
packages: write | |
contents: read | |
id-token: write | |
actions: write | |
env: | |
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} | |
TELEMETRY_ENABLED: false | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Clean up disk space | |
uses: jlumbroso/free-disk-space@main | |
with: | |
tool-cache: true | |
android: true | |
dotnet: true | |
haskell: true | |
large-packages: true | |
swap-storage: true | |
- name: Docker Auth | |
uses: docker/login-action@v3 | |
with: | |
username: ${{ secrets.RAGTORICHES_DOCKER_UNAME }} | |
password: ${{ secrets.RAGTORICHES_DOCKER_TOKEN }} | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v3 | |
- name: Set image name | |
id: image | |
run: | | |
echo "IMAGE_NAME=ragtoriches/dev" >> $GITHUB_OUTPUT | |
- name: Build and Push Docker Image | |
uses: docker/build-push-action@v5 | |
with: | |
context: . | |
file: ./py/Dockerfile | |
push: true | |
tags: ragtoriches/dev:latest | |
platforms: linux/amd64 | |
no-cache: true | |
pull: true | |
- name: Run cloud LLM integration tests in Docker | |
working-directory: ./py | |
run: | | |
python3 -m venv venv | |
source venv/bin/activate | |
pip install -e . | |
echo "R2R Version" | |
r2r version | |
echo "R2R Serve --docker" | |
r2r serve --docker --exclude-neo4j=true --exclude-ollama=true --image=ragtoriches/dev:latest | |
echo "Waiting for services to start..." | |
sleep 30 | |
echo "Ingest Data" | |
r2r ingest-sample-files | |
echo "Get Documents Overview" | |
r2r documents-overview | |
echo "Get Document Chunks" | |
r2r document-chunks 93123a68-d668-51de-8291-92162730dc87 | |
echo "Delete Documents" | |
r2r delete --keys=document_id --values=b736292c-11e6-5453-9686-055da3edb866 | |
echo "Vector Search" | |
r2r search --query="What was Uber'\''s profit in 2020?" | |
echo "Hybrid Search" | |
r2r search --query="What is a fierce nerd?" --use-hybrid-search | |
echo "Basic RAG" | |
r2r rag --query="What was Uber'\''s profit in 2020?" | |
echo "RAG with Hybrid Search" | |
r2r rag --query="Who is John Snow?" --use-hybrid-search | |
echo "Streaming RAG" | |
r2r rag --query="What was Lyft'\''s profit in 2020?" --stream | |
echo "Users Overview" | |
r2r users-overview | |
echo "Analytics" | |
r2r analytics --filters '{"search_latencies": "search_latency"}' --analysis-types '{"search_latencies": ["basic_statistics", "search_latency"]}' | |
echo "Logging" | |
r2r logs | |
echo "Docker Down" | |
r2r docker-down | |
cleanup: | |
needs: build-and-test | |
runs-on: [ self-hosted, Linux ] | |
if: always() | |
steps: | |
- name: Clean up Virtual Environment | |
run: | | |
if [ -d "venv" ]; then | |
deactivate || true | |
rm -rf venv | |
fi | |
docker stop $(docker ps -a -q) || true | |
docker system prune -af --volumes | |
docker network prune --force | |
docker volume rm $(docker volume ls -qf dangling=true) || true |