Phabricator Arcanist -无法安装信号处理程序pcntl_signal()



我有一个脚本,旨在发送对差异修订的评论,并旨在更新海港管理员CI构建是否成功。最近我一直收到以下错误:

PCNTL [49m[m Unable to install signal handler, pcntl_signal() unavailable. Continuing without signal handling.
[2022-11-10 11:34:30] EXCEPTION: (Exception) Failed to s

我试过PHP 8.1和5.6版本没有运气。有人知道解决办法吗?appriated。

完整日志:

[Pipeline] sh
echo '{"transactions":[{"type":"comment","value":"failed: http://jenkins.lab.local:8080/job/Lemington_build/685/"}],"objectIdentifier":"D43951"}'
arc --trace --conduit-token <secret_token> --conduit-uri http://phabricator.lab.local/ call-conduit differential.revision.edit
[1m[45m ARGV [49m[m "C:/Program Files/Arcanist/arcanist/bin/arc" --trace --conduit-token <secret_token> --conduit-uri http://phabricator.lab.local/ call-conduit differential.revision.edit
[1m[45m PCNTL [49m[m Unable to install signal handler, pcntl_signal() unavailable. Continuing without signal handling.
[2022-11-10 11:34:30] EXCEPTION: (Exception) Failed to set socket nonblocking! at [<arcanist>srcchannelPhutilSocketChannel.php:51]
arcanist(head=master, ref.master=85c953ebe4a6)
#0 PhutilSocketChannel::__construct(resource) called at [<arcanist>srcworkflowArcanistWorkflow.php:2414]
#1 ArcanistWorkflow::readStdin() called at [<arcanist>srcworkflowArcanistCallConduitWorkflow.php:46]
#2 ArcanistCallConduitWorkflow::runWorkflow(PhutilArgumentParser) called at [<arcanist>srcworkflowArcanistWorkflow.php:227]
#3 ArcanistWorkflow::executeWorkflow(PhutilArgumentParser) called at [<arcanist>srctoolsetArcanistPhutilWorkflow.php:21]
#4 ArcanistPhutilWorkflow::execute(PhutilArgumentParser) called at [<arcanist>srcparserargumentPhutilArgumentParser.php:492]
#5 PhutilArgumentParser::parseWorkflowsFull(array) called at [<arcanist>srcruntimeArcanistRuntime.php:171]
#6 ArcanistRuntime::executeCore(array) called at [<arcanist>srcruntimeArcanistRuntime.php:37]
#7 ArcanistRuntime::execute(array) called at [<arcanist>supportinitinit-arcanist.php:6]
#8 require_once(string) called at [<arcanist>binarc:10]

我试过PHP 8.1和5.6版本没有运气。还尝试了arc升级命令,但我使用的是最新版本

你得到这个错误是因为你的本地版本的PHP不能用pcntl_signal

编译您可以使用以下命令

检查它是否被支持
php -i | grep pcntl 

结果应该是

pcntl
pcntl support => enabled

PHP手册中的这个链接是安装说明- https://www.php.net/manual/en/pcntl.installation.php

最新更新