我在詹金斯增加了一份新工作,我想定期安排。
在配置作业中,我选中了“定期构建”复选框,并在计划文本字段中添加了以下表达式:
15 13***
但它不会在预定时间运行。
安排工作是正确的程序吗?
作业应在凌晨4:20运行,但未运行。
Jenkins允许您设置多次,以换行符分隔。
如果你需要它在每天早上7点建造,以及每周日下午4点,下面的效果很好。
H 7 * * *
H 16 * * 0
格式如下:
分钟(0-59),小时(0-23),日(1-31),月(1-12),星期(0-6)
可以插入代表单词哈希的字母H,而不是任何值。它将根据项目名称的哈希代码计算参数。
这是因为,如果您同时在构建机器上构建多个项目,比如说每天午夜,它们不会同时开始构建执行。根据散列码的不同,每个项目在不同的时间开始执行。
您还可以指定数字之间的值,即。H(0,30)将返回项目的哈希代码,其中可能的哈希值为0-30。
示例:
>
每天早上08:30开始构建,周一-周五:30 08 * * 1-5
工作日每天构建两次,午餐时间12:00和午夜00:00,周日至周四:00 0,12**0-4
每天下午4:00-4:59或16:00-16:59之间开始构建,具体取决于项目哈希:H 16**1-5
午夜开始建造:@午夜或午夜开始建造,每周六:59 23**6
每个月的第一天凌晨2:00-02:30之间:H(0,30)02 01**
通过将计划周期设置为15 13***
可以告诉Jenkins将构建计划安排在每年每月的每一天,即每天13小时的第15分钟。
Jenkins使用了cron表达式,不同的字段是:
如果您希望每5分钟安排一次构建,这将完成以下工作:*/5****
如果你想安排你的构建每天在8点,这将做的工作:0 8 * * *
对于过去的几个版本(2014),Jenkins有一个新参数,H
(摘自Jenkins代码留档):
为了允许定期计划的任务在系统上产生均匀的负载,应尽可能使用符号H
(表示“哈希”)。
例如,在一打日常工作中使用0***
,将导致午夜出现大峰值。相比之下,使用H***
仍然可以每天执行一次每个作业,但不能同时执行所有作业,更好地使用有限的资源。
还请注意:
可以将H
符号视为一个范围内的随机值,但它实际上是作业名称的散列,而不是随机函数,因此该值对于任何给定项目都保持稳定。
更多使用“H”的示例
安装了插件,这样当我们签入时,执行一个构建,如果成功,则验证中的修改。如果构建失败,那么就不是。我的理解是,这是通过在中设置的工作来实现的。我们现在已经创建了一个新分支(),我想我需要克隆指向另一个分支的现有作业,以便在每次提交时执行相同的工作流和构建。有人能解释一下我是如何克隆这些工作的吗?我似乎看不到一种通过UI来完成的方法,甚至看不到一种通过UI列出作业的方法。
我已经为我们的项目设置了jenkins声明管道,而且我正在使用jenkins blue ocean插件 在github中,它显示以下url:http://unconfigured-jenkins-location/job/CRM/job/PR-180/1/display/redirect 如何将网址更改为正确的网址? 我发现这个插件是有责任的https://wiki.jenkins.io/disp
我可以在我的笔记本电脑上成功安装jenkins online。但是,当试图离线安装詹金斯(jenkins)时(在我无法连接到互联网的办公室工作站上),情况就不妙了。在经营詹金斯家族之后。命令行战争虽然jenkins已经成功安装,但一些插件却丢失了。我设法从帖子中获得了一些帮助,如何在Jenkins中手动安装插件? 但是每个插件都必须单独下载,然后复制到我的离线机器上。所以我耍了个花招。我复制了(在
问题内容: 我有一个.Jar文件,它将在运行时将数据加载到数据库中。我已经计划通过詹金斯来担任这项工作。当我在詹金斯执行作业时,它将成功运行.JAR。但是,请说作业中是否存在空指针异常,并且该异常未成功完成。即便如此,詹金斯仍然说工作已经“通过”。如果作业执行过程中出现问题,如何使作业失败? 问题答案: @Corey的解决方案很好。而且,如果您不想编写JUnit测试并在Jenkins中提供支持,则
有没有可能让詹金斯使用真正的浏览器而不是无头浏览器?我正在运行一些用TestNG编写的测试(使用Selenium webdriver)。当我运行testng时。在Eclipse中,浏览器启动并运行测试。但当我使用Jenkins并用maven运行测试时,它不会启动任何浏览器。
问题内容: 我想在不同的机器上使用相同的作业。但是我不想每次都更改作业的配置。我可以通过机器名称标签作为参数并在另一台机器上运行作业吗?(不同时)。 我想在将作业运行到我在配置中编写的脚本(批处理脚本)时传递参数。我们能做到吗? 我可以从工作中获得返回值并在下一个工作中使用它吗? 问题答案: 是的,您可以使用NodeLabel Parameter Plugin传递节点标签参数。 是的,您可以按照描