mirror of
https://github.com/langgenius/dify.git
synced 2026-02-02 00:51:49 +08:00
Some checks are pending
autofix.ci / autofix (push) Waiting to run
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/amd64, build-api-amd64) (push) Waiting to run
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/arm64, build-api-arm64) (push) Waiting to run
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/amd64, build-web-amd64) (push) Waiting to run
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/arm64, build-web-arm64) (push) Waiting to run
Build and Push API & Web / create-manifest (api, DIFY_API_IMAGE_NAME, merge-api-images) (push) Blocked by required conditions
Build and Push API & Web / create-manifest (web, DIFY_WEB_IMAGE_NAME, merge-web-images) (push) Blocked by required conditions
Main CI Pipeline / Check Changed Files (push) Waiting to run
Main CI Pipeline / API Tests (push) Blocked by required conditions
Main CI Pipeline / Web Tests (push) Blocked by required conditions
Main CI Pipeline / Style Check (push) Waiting to run
Main CI Pipeline / VDB Tests (push) Blocked by required conditions
Main CI Pipeline / DB Migration Test (push) Blocked by required conditions
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
38 lines
963 B
Python
38 lines
963 B
Python
from __future__ import annotations
|
|
|
|
import sys
|
|
from typing import TYPE_CHECKING, cast
|
|
|
|
if TYPE_CHECKING:
|
|
from celery import Celery
|
|
|
|
celery: Celery
|
|
|
|
|
|
def is_db_command() -> bool:
|
|
if len(sys.argv) > 1 and sys.argv[0].endswith("flask") and sys.argv[1] == "db":
|
|
return True
|
|
return False
|
|
|
|
|
|
# create app
|
|
if is_db_command():
|
|
from app_factory import create_migrations_app
|
|
|
|
app = create_migrations_app()
|
|
else:
|
|
# Gunicorn and Celery handle monkey patching automatically in production by
|
|
# specifying the `gevent` worker class. Manual monkey patching is not required here.
|
|
#
|
|
# See `api/docker/entrypoint.sh` (lines 33 and 47) for details.
|
|
#
|
|
# For third-party library patching, refer to `gunicorn.conf.py` and `celery_entrypoint.py`.
|
|
|
|
from app_factory import create_app
|
|
|
|
app = create_app()
|
|
celery = cast("Celery", app.extensions["celery"])
|
|
|
|
if __name__ == "__main__":
|
|
app.run(host="0.0.0.0", port=5001)
|