langflow/.github/workflows/python_test.yml
Gabriel Luiz Freitas Almeida f499e257f9
Merge main into dev (#2400)
* chore: update linting workflows to include dev branch in merge_group

* Update README.md

Add 1.0 banner

* Update README.md

* chore: update package versions in pyproject.toml files

* Refactor "created_at" column type for consistency and fix cancel middleware (#2316)

* chore: update linting workflows to include dev branch in merge_group

* Update README.md

Add 1.0 banner

* Update README.md

* chore: update package versions in pyproject.toml files

* refactor: update "created_at" column type to use the "sa" module for consistency

* Update README.md

Add 1.0 banner

* chore: Remove unused import in ToolCallingAgent.py

* fix: adapt RequestCancelledMiddleware to handle cancelled requests

* chore: Remove unused import in test_helper_components.py

* refactor: Declare queue variable with explicit type in RequestCancelledMiddleware

---------

Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>

* chore: Update AstraDB.py imports and method signature for search_documents

* chore: Update package versions in pyproject.toml files

* chore: Update run-name in release.yml for Langflow Release

* fix: add call to _add_documents_to_vector_store in AstraDB component

* chore: Fix missing parentheses in RequestCancelledMiddleware

* chore: Update pydantic-settings and tenacity versions

The commit updates the versions of the `pydantic-settings` and `tenacity` packages in the `poetry.lock` file. The `pydantic-settings` version is updated from 2.3.3 to 2.3.4, and the `tenacity` version is updated from 8.4.1 to 8.4.2.

* Update README.md

Add 1.0 banner

* fix fetch data to work even with autologin true

* format code

* deactivate stop button until we have a better solution (#2337)

* chore: Update authContext imports and remove duplicate imports

* Refactor telemetry service payload field names for consistency

* chore: Update package versions in pyproject.toml files

* chore: Update release.yml to use the correct branch for the commit

* added firecrawl integration

* chore: Rename Kubernetes documentation file to use .md extension

* components: simplify astra vectorize

* components: simplify astra vectorize

* Cassandra: support for non-AstraDB databases

* chore: Add GitHub workflows for JavaScript and Python autofix

This commit adds GitHub workflows for JavaScript and Python autofix. The JavaScript workflow is triggered on pull requests and pushes to the main branch, specifically for changes in the "src/frontend" directory. It checks out the code, sets up Node.js, caches Node.js dependencies, installs Node.js dependencies, and runs Prettier for code formatting. The Python workflow is also triggered on pull requests and pushes to the main branch, but for changes in the "poetry.lock", "pyproject.toml", "src/backend", and "tests" directories. It checks out the code, installs Ruff, and runs Mypy for type checking and code formatting.

* chore: Update GitHub workflow to run Ruff Check

* ci: always run required checks (#2395)

---------

Co-authored-by: Rodrigo Nader <rodrigosilvanader@gmail.com>
Co-authored-by: anovazzi1 <otavio2204@gmail.com>
Co-authored-by: rafaelsideguide <150964962+rafaelsideguide@users.noreply.github.com>
Co-authored-by: Nicolò Boschi <boschi1997@gmail.com>
2024-06-27 05:06:10 -07:00

54 lines
1.8 KiB
YAML

name: Python tests
on:
pull_request:
types: [opened, synchronize, reopened]
branches: [dev, main]
merge_group:
types: [checks_requested]
env:
POETRY_VERSION: "1.8.2"
jobs:
build:
name: Run Unit Tests
runs-on: ubuntu-latest
strategy:
matrix:
python-version:
- "3.12"
- "3.11"
- "3.10"
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }} + Poetry ${{ env.POETRY_VERSION }}
uses: "./.github/actions/poetry_caching"
with:
python-version: ${{ matrix.python-version }}
poetry-version: ${{ env.POETRY_VERSION }}
cache-key: ${{ runner.os }}-poetry-${{ env.POETRY_VERSION }}-${{ hashFiles('**/poetry.lock') }}
- name: Install Python dependencies
run: |
poetry env use ${{ matrix.python-version }}
poetry install
- name: Run unit tests
run: |
make unit_tests args="-n auto"
- name: Test CLI
run: |
poetry run python -m langflow run --host 127.0.0.1 --port 7860 --backend-only &
SERVER_PID=$!
# Wait for the server to start
timeout 120 bash -c 'until curl -f http://127.0.0.1:7860/api/v1/auto_login; do sleep 5; done' || (echo "Server did not start in time" && kill $SERVER_PID && exit 1)
# Terminate the server
kill $SERVER_PID || (echo "Failed to terminate the server" && exit 1)
sleep 10 # give the server some time to terminate
# Check if the server is still running
if kill -0 $SERVER_PID 2>/dev/null; then
echo "Failed to terminate the server"
exit 1
else
echo "Server terminated successfully"
fi