Improve makefile (#2338)
* Update Makefile to use command substitution for killing process * break long lines into shorter ones * replace fixed values with variables * correct the unit test coverage report --------- Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com> Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
This commit is contained in:
parent
6564d04206
commit
8792126955
2 changed files with 62 additions and 13 deletions
53
Makefile
53
Makefile
|
|
@ -47,20 +47,22 @@ init:
|
||||||
|
|
||||||
|
|
||||||
coverage: ## run the tests and generate a coverage report
|
coverage: ## run the tests and generate a coverage report
|
||||||
poetry run pytest --cov \
|
@poetry run coverage run
|
||||||
--cov-config=.coveragerc \
|
@poetry run coverage erase
|
||||||
--cov-report xml \
|
|
||||||
--cov-report term-missing:skip-covered \
|
|
||||||
--cov-report lcov:coverage/lcov-pytest.info
|
|
||||||
|
|
||||||
|
|
||||||
# allow passing arguments to pytest
|
# allow passing arguments to pytest
|
||||||
unit_tests:
|
unit_tests:
|
||||||
poetry run pytest --ignore=tests/integration --instafail -ra -n auto -m "not api_key_required" $(args)
|
poetry run pytest \
|
||||||
|
--ignore=tests/integration \
|
||||||
|
--instafail -ra -n auto -m "not api_key_required" \
|
||||||
|
$(args)
|
||||||
|
|
||||||
|
|
||||||
integration_tests:
|
integration_tests:
|
||||||
poetry run pytest tests/integration --instafail -ra -n auto $(args)
|
poetry run pytest tests/integration \
|
||||||
|
--instafail -ra -n auto \
|
||||||
|
$(args)
|
||||||
|
|
||||||
format: ## run code formatters
|
format: ## run code formatters
|
||||||
poetry run ruff check . --fix
|
poetry run ruff check . --fix
|
||||||
|
|
@ -129,9 +131,20 @@ start:
|
||||||
@echo 'Running the CLI'
|
@echo 'Running the CLI'
|
||||||
|
|
||||||
ifeq ($(open_browser),false)
|
ifeq ($(open_browser),false)
|
||||||
@make install_backend && poetry run langflow run --path $(path) --log-level $(log_level) --host $(host) --port $(port) --env-file $(env) --no-open-browser
|
@make install_backend && poetry run langflow run \
|
||||||
|
--path $(path) \
|
||||||
|
--log-level $(log_level) \
|
||||||
|
--host $(host) \
|
||||||
|
--port $(port) \
|
||||||
|
--env-file $(env) \
|
||||||
|
--no-open-browser
|
||||||
else
|
else
|
||||||
@make install_backend && poetry run langflow run --path $(path) --log-level $(log_level) --host $(host) --port $(port) --env-file $(env)
|
@make install_backend && poetry run langflow run \
|
||||||
|
--path $(path) \
|
||||||
|
--log-level $(log_level) \
|
||||||
|
--host $(host) \
|
||||||
|
--port $(port) \
|
||||||
|
--env-file $(env)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -166,13 +179,27 @@ backend: ## run the backend in development mode
|
||||||
@echo 'Setting up the environment'
|
@echo 'Setting up the environment'
|
||||||
@make setup_env
|
@make setup_env
|
||||||
make install_backend
|
make install_backend
|
||||||
@-kill -9 $(lsof -t -i:7860)
|
@-kill -9 $$(lsof -t -i:7860)
|
||||||
ifdef login
|
ifdef login
|
||||||
@echo "Running backend autologin is $(login)";
|
@echo "Running backend autologin is $(login)";
|
||||||
LANGFLOW_AUTO_LOGIN=$(login) poetry run uvicorn --factory langflow.main:create_app --host 0.0.0.0 --port 7860 --reload --env-file .env --loop asyncio --workers $(workers)
|
LANGFLOW_AUTO_LOGIN=$(login) poetry run uvicorn \
|
||||||
|
--factory langflow.main:create_app \
|
||||||
|
--host 0.0.0.0 \
|
||||||
|
--port $(port) \
|
||||||
|
--reload \
|
||||||
|
--env-file $(env) \
|
||||||
|
--loop asyncio \
|
||||||
|
--workers $(workers)
|
||||||
else
|
else
|
||||||
@echo "Running backend respecting the .env file";
|
@echo "Running backend respecting the $(env) file";
|
||||||
poetry run uvicorn --factory langflow.main:create_app --host 0.0.0.0 --port 7860 --reload --env-file .env --loop asyncio --workers $(workers)
|
poetry run uvicorn \
|
||||||
|
--factory langflow.main:create_app \
|
||||||
|
--host 0.0.0.0 \
|
||||||
|
--port $(port) \
|
||||||
|
--reload \
|
||||||
|
--env-file $(env) \
|
||||||
|
--loop asyncio \
|
||||||
|
--workers $(workers)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -152,6 +152,28 @@ log_cli = true
|
||||||
markers = ["async_test", "api_key_required"]
|
markers = ["async_test", "api_key_required"]
|
||||||
|
|
||||||
|
|
||||||
|
[tool.coverage.run]
|
||||||
|
command_line = """
|
||||||
|
-m pytest
|
||||||
|
--cov --cov-report=term --cov-report=html
|
||||||
|
--instafail -ra -n auto -m "not api_key_required"
|
||||||
|
tests/unit
|
||||||
|
"""
|
||||||
|
source = ["src/backend/base/langflow/"]
|
||||||
|
omit = ["*/alembic/*", "tests/*", "*/__init__.py"]
|
||||||
|
|
||||||
|
|
||||||
|
[tool.coverage.report]
|
||||||
|
sort = "Stmts"
|
||||||
|
skip_empty = true
|
||||||
|
show_missing = false
|
||||||
|
ignore_errors = true
|
||||||
|
|
||||||
|
|
||||||
|
[tool.coverage.html]
|
||||||
|
directory = "coverage"
|
||||||
|
|
||||||
|
|
||||||
[tool.ruff]
|
[tool.ruff]
|
||||||
exclude = ["src/backend/langflow/alembic/*"]
|
exclude = ["src/backend/langflow/alembic/*"]
|
||||||
line-length = 120
|
line-length = 120
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue