如果我从Mac上访问Jenkins网站,Jenkins可以在Ubuntu 14上启动GenyMotion吗?

时间:2015-03-30 15:39:16

标签: jenkins genymotion

此设置是否可行?

1)安装了Jenkins,Genymotion和Virtual Box的Ubuntu 14

2)Jenkins内部的工作将在本教程之后从命令行恢复并运行Genymotion:http://blog.genymobile.com/genymotion-jenkins-android-testing/

在我的Mac上,我尝试访问Jenkins网站并运行构建。 首先,Genymotion失败了,因为它无法“连接到X服务器”。 所以,我在Jenkins上安装了Xvnc插件,解决了这个错误。 不幸的是,Genymotion仍然无法启动错误“无法获取IP地址”。

请注意,我只对服务器有“ssh -X”访问权限。 我可以手动启动Genymotion但是当我注销时该过程终止了。因此,我无法按照此解决方案的建议将GenyMotion运行到服务器上:Jenkins - Use Genymotion VM instead of Android Emulator

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

以下是让Genymotion在持续集成服务器上运行的方法。

  1. 首先,运行Genymotion的计算机需要尊重the hardware requirements
  2. 如果您没有运行X服务器,您将无法运行Genymotion。
  3. 我认为xVNC不支持OpenGL,因此我建议您运行标准X服务器。 您可以通过运行startx来启动Xorg服务器。

    1. 然后你需要在Jenkins 中设置你的ssh连接而不用 -X参数,因为我们希望渲染在本地完成
    2. 然后你需要将environement变量DISPLAY声明为默认的X客户端值。大部分时间都是:0
    3. 此值将要求您将通过ssh连接启动的所有窗口打开到第一个X客户端。它是在电脑屏幕上运行的那个。 要检查您需要输入的DISPLAY值,您需要物理访问计算机并键入echo $DISPLAY。大多数情况下,此值为:0

      此外,如果您的计算机与硬件要求不兼容,您可以使用网络上的另一台计算机运行测试,这要归功于Jenkins节点。这是a good tutorial来设置它。

      最后,我想提一下我们将很快发布一个用于Genymotion的命令行工具和一个Gradle插件,它允许您直接从build.gradle文件控制在测试期间运行的Genymotion设备。

答案 1 :(得分:0)

有点晚了,但也许这可以帮到你

### Get IP address of selected VM
VM_IP=`VBoxManage guestproperty get $VM_SELECTED androvm_ip_management | awk -     F ": " '{print $2}'`

我分别找到here (repo) here (slides)