首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Phabricator对环境的假设

Phabricator对环境的假设
EN

Stack Overflow用户
提问于 2014-05-09 17:32:52
回答 1查看 574关注 0票数 0

我试图让Phabricator通过apache在Solaris上运行。该网站正在运行,但所有的cli脚本都没有。例如,phd

第一个问题是,它没有将参数传递给它调用的底层manage-daemons.php脚本。查看phd文件,这并不让我感到惊讶:

代码语言:javascript
复制
$> cat phd

../scripts/daemon/manage_daemons.php

现在,考虑到我的默认shell是bash,这将不会传递给我的参数。为此,我修改了脚本:

代码语言:javascript
复制
#! /bin/bash
../scripts/daemon/manage_daemons.php  $*

现在,这将通过参数传递,但它现在无法通过相对路径找到它所需的可转换脚本:

代码语言:javascript
复制
./phd start
Preparing to launch daemons.
NOTE: Logs will appear in '/var/tmp/phd/log/daemons.log'.

Launching daemon "PhabricatorRepositoryPullLocalDaemon".
[2014-05-09 19:29:59] EXCEPTION: (CommandException) Command failed with error #127!
COMMAND
exec ./phd-daemon 'PhabricatorRepositoryPullLocalDaemon' --daemonize --log='/var/tmp/phd/log/daemons.log' --phd='/var/tmp/phd/pid'

STDOUT
(empty)

STDERR
./phd-daemon: line 1: launch_daemon.php: not found
 at [/XXX/XXX/libphutil/src/future/exec/ExecFuture.php:398]
  #0 ExecFuture::resolvex() called at [/XXX/XXX/phabricator/src/applications/daemon/management/PhabricatorDaemonManagementWorkflow.php:167]
  #1 PhabricatorDaemonManagementWorkflow::launchDaemon(PhabricatorRepositoryPullLocalDaemon, Array , false) called at [/XXX/XXX/phabricator/src/applications/daemon/management/PhabricatorDaemonManagementWorkflow.php:246]
  #2 PhabricatorDaemonManagementWorkflow::executeStartCommand() called at [/XXX/XXX/phabricator/src/applications/daemon/management/PhabricatorDaemonManagementStartWorkflow.php:18]
  #3 PhabricatorDaemonManagementStartWorkflow::execute(Object PhutilArgumentParser) called at [/XXX/XXX/libphutil/src/parser/argument/PhutilArgumentParser.php:396]
  #4 PhutilArgumentParser::parseWorkflowsFull(Array of size 9 starting with: { 0 => Object PhabricatorDaemonManagementListWorkflow }) called at [/XXX/XXX/libphutil/src/parser/argument/PhutilArgumentParser.php:292]
  #5 PhutilArgumentParser::parseWorkflows(Array of size 9 starting with: { 0 => Object PhabricatorDaemonManagementListWorkflow }) called at [/XXX/XXX/phabricator/scripts/daemon/manage_daemons.php:30]

注意,我用XXX模糊了我的路径,因为它们泄露了敏感的信息。

显然,我不应该修改这些脚本。这表明某些先决条件没有适当设置。

在我看来,Phabricator正在对我的设置做出一些(大胆的)假设。但我不太确定.?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-10 00:34:27

这些应该是符号链接。例如,如果您查看GitHub上存储库中的"phd“,可以看到文件类型是”符号链接“:

https://github.com/facebook/phabricator/blob/master/bin/phd

您的环境中有些东西不正确地将符号链接转换为普通文件。我不知道任何Git配置都会导致这种情况,尽管有可能是这样的。我看到这种情况的一种情况是,当一个工作副本被克隆,然后使用像rsync这样的没有适当标志的东西复制以保留符号链接。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23570766

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档