2014-01-28 19 views

回答

5

通过詹金斯上的从取决于运行的AutoIt奴隶如何启动。由于您使用的是AutoIt,因此您使用的是Windows。 Windows从站不能通过SSH或Windows服务启动。您必须使用JNLP Web状态,并且必须以特定的方式启动它,以使AutoIt正常工作。

为了使AutoIt正常工作,从站必须首先有用户登录和桌面。您可以手动执行此操作,或将Windows设置为在启动时自动登录。

一旦在桌面上,必须使用JNLP web start方法。这通常意味着通过curl从Jenkins服务器下载slave.jar,然后使用slave启动java并指向Jenkins端的jnlp文件。最好是通过调度程序自动执行此操作,但也可以手动执行。看到这里的一个例子:https://wiki.jenkins-ci.org/display/JENKINS/Launch+Java+Web+Start+slave+agent+via+Windows+Scheduler

一旦你以这种方式连接的slave,一个针对运行AutoIt的slave的作业应该可以工作。

注意:鉴于AutoIt的性质,您无法在主节点上运行它,因为主节点从不具有AutoIt所需的桌面访问权限。您可以在主节点上设置一个从属代理来解决这个限制。

+0

所有设置,从站通过JNLP激活,从站服务器启动并运行。我无法从Jenkins运行任何exe(安装程序)文件。 注:詹金斯是在1 serevr和奴隶,我必须通过詹金斯执行exe文件保存在另一台服务器上。 – user3243528

+0

JNLP是否以提升的权限运行?大多数安装者都需要这样做使用任务计划以这种方式启动。 –

0

所有设置,从站通过JNLP激活,从站服务器启动并运行。 我无法从Jenkins运行任何exe(安装程序)文件。

注:詹金斯是在1 serevr和奴隶,我必须通过詹金斯执行EXE保存在另一台服务器上。

0

当您从Jenkins调用代码时,调用AutoIt无法在从属/执行Jenkins机器中找到所需的窗口。

解决方案:编写AutoIt脚本并手动调用它的执行机器,处理Pop窗口。

+0

嗨sanjait,请不要在你的帖子中包含签名。我们在您的个人资料中有一席之地,您可以告诉我们关于您自己的所有信息,并且它与您撰写的所有内容直接相关。 – Matt