Запустите процесс через API цирка - PullRequest
0 голосов
/ 06 сентября 2018

Я хочу, чтобы многие динамически генерируемые приложения Flask генерировали цирковую библиотеку, а не определяли файл конфигурации для каждого приложения. Поэтому я попробовал что-то вроде этого

from circus import get_arbiter
arbiter = get_arbiter([
    {
        "name": "SAYA-01",
        "cmd": "chaussette",
        "numprocesses": 1,
        "use_sockets": True,
        "working_dir": "/home/karim/Workspace/github.com/me/app/manager/plugins",
        "virtualenv": "/home/karim/Workspace/github.com/me/.env",
        "copy_env": True,
        "background": True,
        "debug": True,

    }
])

try:
    arbiter.start()
finally:
    arbiter.stop()

Это работает, но я не знаю, как использовать сокеты, поэтому я могу использовать этот синтаксис

chaussette --fd $(circus.sockets.web)

как то, что мы можем сделать с конфигурационным файлом

[watcher:webapp]
cmd = bin/chaussette --fd $(circus.sockets.web)
numprocesses = 3
use_sockets = True

[socket:web]
host = 127.0.0.1
port = 9999

Что ты думаешь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...