Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pip 通知/订阅不同的服务/安装实现_Pip_Virtualenv_Puppet - Fatal编程技术网

Pip 通知/订阅不同的服务/安装实现

Pip 通知/订阅不同的服务/安装实现,pip,virtualenv,puppet,Pip,Virtualenv,Puppet,我正在为木偶()制作哨兵模块的叉子 由于Sentry有很多依赖项,与我通常只安装软件包的方法相反,此模块使用virtualenv和pip从requirements.txt安装,作为选项之一 此外,在基于RedHat的系统上,该服务通过supervisor而不是普通的服务脚本进行管理 现在,我想添加一种在requirements.txt发生更改时重新启动服务的方法;但是,只有当安装方法为venv(对于virtual env,使用requirements.txt)且服务方法为supervisor时,

我正在为木偶()制作哨兵模块的叉子

由于Sentry有很多依赖项,与我通常只安装软件包的方法相反,此模块使用virtualenv和pip从requirements.txt安装,作为选项之一

此外,在基于RedHat的系统上,该服务通过supervisor而不是普通的服务脚本进行管理

现在,我想添加一种在requirements.txt发生更改时重新启动服务的方法;但是,只有当安装方法为venv(对于virtual env,使用requirements.txt)且服务方法为supervisor时,才会发生这种情况

这意味着我不能在这两个类中显式地添加notify,因为特定的安装方法应该不知道特定的服务方法,反之亦然

理想情况下,我希望sentry::service::supervisor订阅
sentry::install
(一般)以便在
sentry::install
(特别是venv)的任何实现发生更改时,重新启动服务

另一个复杂的问题是,在这种情况下,我不能做相反的事情(从requirements.txt通知到
sentry::server
),因为requirements.txt的文件资源是在另一个模块的另一个类中声明的,所以我不能添加到它的通知中