name: Long Integration Tests on: schedule: - cron: '30 6 * * *' # At 06:30 workflow_dispatch: env: CARGO_TERM_COLOR: always UV_VERSION: 0.9.17 jobs: long-e2e-tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 with: lfs: true # Fetch LFS files automatically - uses: actions/setup-python@v6 with: python-version: '3.13' - name: Set up Docker Buildx uses: docker/setup-buildx-action@v4 - name: Install uv and Python dependencies run: | curl -LsSf https://astral.sh/uv/$UV_VERSION/install.sh | sh echo "$HOME/.local/bin" >> $GITHUB_PATH uv --project tests lock --check uv --project tests sync - name: Build Qdrant Docker image uses: docker/build-push-action@v6 with: context: . tags: qdrant/qdrant:e2e-tests cache-from: | type=gha,scope=${{ github.ref }}-e2e type=gha,scope=${{ github.base_ref }}-e2e cache-to: type=gha,mode=max,scope=${{ github.ref }}-e2e load: true build-args: | PROFILE=ci FEATURES=data-consistency-check,rocksdb,staging - name: Verify Docker image run: docker images | grep qdrant - name: Run e2e tests run: uv --project tests run pytest -n 4 tests/e2e_tests -v --tb=short --durations=5 -m "longrunning" shell: bash timeout-minutes: 40 - name: Upload test logs on failure uses: actions/upload-artifact@v7 if: failure() with: name: e2e-test-logs path: | tests/e2e_tests/test_*.log tests/e2e_tests/**/logs/ retention-days: 7