【发布时间】:2012-02-18 00:16:32
【问题描述】:
首先让我指出我是 tomcat & Jenkins 的新手。这是我设置的第一台 CI 服务器。
我正在开发一个 flex 应用程序,我的目标是让 jenkins 在将更改推送到 github 后自动构建并运行 flexUnit 测试。
目前为止:
在运行 (10.6.8) 的无头 mac mini 服务器上的 tomcat (6.0.33) 下安装了 Jenkins (1.450) (基本上遵循“Mac OS X Server (10.6) 上的 Servlet 容器安装”@ http://wiki.wocommunity.org/display/WO/Installing+and+Configuring+Jenkins+Build+Server)
已下载 flexSDK,设置用户身份验证并配置 github 挂钩。
此时一切正常,一旦将更改推送到 github,jenkins 将构建一个简单的 flex 应用程序
现在我正在尝试构建 flexUnit 示例 CI 项目。在第一次尝试时,它会卡住等待来自 Flash Player 调试器(投影仪)的重播。经过一番研究,我发现 Flash Player 需要在虚拟显示器中运行。所以我安装了 Xvnc Jenkins/Hudson 插件(https://wiki.jenkins-ci.org/display/JENKINS/Xvnc+Plugin)。
Os X 有一个内置的 vnc 服务器,但它似乎无法与 Xvnc 通信,所以我安装了tightvnc(通过 macports)。
然后我通过在终端中运行以下命令在我的作业工作区中设置 VNC 密码 “sudo -u _appserver vncpasswd /Library/Jenkins/jobs/flexUnitSampleCIProject/workspace/.vnc/passwd”
这就是我卡住的地方,当我尝试构建 flexUnitSampleCIProject 时出现以下错误
FATAL: Cannot run program "vncserver" (in directory "/Library/Jenkins/jobs/flexUnitSampleCIProject/workspace"): error=2, No such file or directory
java.io.IOException: Cannot run program "vncserver" (in directory "/Library/Jenkins/jobs/flexUnitSampleCIProject/workspace"): error=2, No such file or directory
我的直觉是这是一个权限问题,因为 jenkins 在用户 _appserver 下运行
所以我在终端中运行了以下命令
“sudo -u _appserver vncserver:6”,我收到以下错误
"vncserver: /Users/admin/.vnc的类型或访问方式错误。"
但是我读到 sudo 不继承用户的主文件夹(在本例中为“_appserver”)并且“su _appserver”不起作用,所以我不确定从这里去哪里
有没有人在 mac server/tomcat/jenkins 上运行过 flexUnit?
任何想法将不胜感激
【问题讨论】:
标签: macos tomcat jenkins vnc-server