我是詹金斯的新手。我正在尝试在单个作业中实现特定场景,以使用 Jenkins 构建移动应用程序。
在单个作业中,我想按顺序启动多个任务:任务 1 (Windows) ---> 任务 2 (Windows) ---> 任务 3 (Windows) ---> 任务 4 (Mac OSX)
每个工作都将专门用于一个项目。将结果从一个任务传递到另一个任务可以通过工作空间来实现,但似乎作业任务必须都运行在同一个环境中。是否有任何插件可以让我在特定的奴隶中运行一些工作任务?
提前致谢
我是詹金斯的新手。我正在尝试在单个作业中实现特定场景,以使用 Jenkins 构建移动应用程序。
在单个作业中,我想按顺序启动多个任务:任务 1 (Windows) ---> 任务 2 (Windows) ---> 任务 3 (Windows) ---> 任务 4 (Mac OSX)
每个工作都将专门用于一个项目。将结果从一个任务传递到另一个任务可以通过工作空间来实现,但似乎作业任务必须都运行在同一个环境中。是否有任何插件可以让我在特定的奴隶中运行一些工作任务?
提前致谢
您可以在从属作业上远程使用触发器构建。然后从主作业中,您可以使用 curl 执行从属构建。像这样:
$(curl --user "username:password" "http://jenkins.yourdomain.org/job/JOB-name/buildWithParameters?SOMEPARAMETER=$SOMEPARAMETER&token=TheSecretToken")
TheSecretToken是您在从属插件上指定的令牌密码。并且用户名:密码是您詹金斯的有效用户。不要在这里使用您自己的帐户,而是使用仅有权启动特定作业的“构建触发器”帐户。
为您提到的每项任务定义一个工作。
在远程机器上有一个奴隶 - 大概是 Mac。
在每个作业中,设置将运行它的相关主机(您有一个参数)。
使用“触发参数化构建”插件以正确的顺序触发作业,并确保在该部分传递“当前构建参数”。
该插件还允许您传递其他值 - 请阅读其帮助以获取更多详细信息。