我有一个uWSGI应用程序,我想用watchmedo监视它,它是在一个诗歌环境下运行的。
不幸的是,以下内容不起作用:
poetry run watchmedo auto-restart --directory=./ --pattern="*.py;*.yml;*.html" --recursive -- uwsgi --ini=uwsgi.ini
此命令引发:
watchmedo: error: unrecognized arguments: --ini=uwsgi.ini
似乎poetry无法理解我将参数传递给uwsgi,而不是watchmedo。我尝试了此命令的多种排列,但无法使其工作。我错过了什么?即使将其作为poetry run bash -c
运行,仍然会引发相同的错误。
1条答案
按热度按时间7d7tgy0s1#
包
watchmedog
/watchmedo
使用模块argparse
来处理CLI参数。不幸的是,恕我直言,它错误地在一个步骤中处理 * 所有 * 参数,而不是只处理其参数并将其余参数传递给调用的命令。除此之外,可以在命令中使用两次伪参数
--
来解决这个问题。您需要在最后一个watchmedo
的参数之后使用--
,并在命令的参数之前使用另一个--
。取代:
用途: