相关疑难解决方法(0)

如何防止某些Jenkins作业同时运行?

我有几个使用共享资源(数据库)的作业,有时可能导致构建在(罕见)事件中失败,即同时触发作业.

例如,给定作业A到E,是否有任何方法可以指定A和C 不应该同时运行

除了上述资源之外,构建彼此独立(不是例如在上游/下游关系中).

"暴力"方式将执行器的数量限制为一个,但如果大多数作业可以同时执行并且构建服务器上不缺乏计算资源,那么这显然不太理想.

hudson jenkins

62
推荐指数
3
解决办法
5万
查看次数

Jenkins多配置项目处理并发设备使用情况

案件

我在移动设备(android,ios)上有一个Jenkins奴隶女巫运行的葫芦测试.要分别运行测试的机器(适用于iOS的Android或适用于Android的Linux),我还使用了Throttle Concurrent Builds插件.通过这种方式,我将设备连接到的Android或Mac Jenkins奴隶分开.

我使用映射表和自编写的bash脚本按名称调用设备并对此特定从站执行测试.映射表映射是设备ID(或iOS的IP)的名称.

架构如下:

[Master]--(Slave-iOS)---------iPhone6
 |             |--------------iPhone5
 |            
 |--------(Slave-Android)-----HTCOne
               |--------------Nexus
               |--------------G4
Run Code Online (Sandbox Code Playgroud)

要将设备移交给bash脚本,我使用Jenkins Matrix Project插件,它允许我创建一个设备和测试用例列表,如:

          HTCOne Nexus G4
Run         x     x     x
Delete      x     x     x
CreateUser  x     x     x
Run Code Online (Sandbox Code Playgroud)

遗憾的是,这个列表只能按顺序执行.现在我还希望在多个设备上并行构建测试,反之亦然.

我搜索一个处理设备分配的Jenkins插件.如果一个触发器需要特定设备,它应该等到可以访问该设备并且可以执行测试.该插件应该与Jenkins中的shell执行集成.

如果它可以与Matrix Project Plugin结合使用,那将是一个很大的优势!

到目前为止我所看到的:

  • 排除-插件,
  • Throttle Concurrent Builds插件,[用于指定slave]
  • 锁定和锁存插件,对于目前为止列出的所有插件,我不知道如何将它们链接到矩阵配置并动态获取设备.我也不知道如何将锁定的资源信息放入我的脚本中.
  • Port Allocator插件,未经测试但似乎有同样的问题
  • 外部资源调度程序,似乎只分配一个资源,如果它是矩阵配置,则找不到任何内容.

我找到的相关问题,虽然有所帮助,但没有解决问题:

testing mobile jenkins calabash

5
推荐指数
1
解决办法
691
查看次数

标签 统计

jenkins ×2

calabash ×1

hudson ×1

mobile ×1

testing ×1