name: Run Tests with Tika Server on: push: paths: - "backend/core/**" pull_request: paths: - "backend/core/**" workflow_dispatch: jobs: test: runs-on: ubuntu-latest services: tika: image: apache/tika ports: - 9998:9998 steps: - name: 👀 Checkout code uses: actions/checkout@v2 - name: 🔨 Install the latest version of rye uses: eifinger/setup-rye@v4 with: enable-cache: true working-directory: backend - name: 🔄 Sync dependencies run: | cd backend UV_INDEX_STRATEGY=unsafe-first-match rye sync --no-lock - name: Run tests env: TIKA_URL: http://localhost:9998/tika OPENAI_API_KEY: this-is-a-test-key run: | sudo apt-get update sudo apt-get install -y libmagic-dev poppler-utils libreoffice tesseract-ocr pandoc cd backend rye run python -c "from unstructured.nlp.tokenize import download_nltk_packages; download_nltk_packages()" rye run python -c "import nltk;nltk.download('punkt_tab'); nltk.download('averaged_perceptron_tagger_eng')" rye test -p quivr-core