C++Jenkins的营造编号和二个幽默的bug

三个job相同的创设编号引起的bug

举例表达:

比如有A,B,C多少个job,使用同样的创设编号

当A创设时,将营造编号由1011升级至1012。

而那时要塑造B,则必须三番五次点击贰次,才会冒出响应。

原因:B的起来编号为1011,它须要比当下的最大+1,才足以被创设。营造编号的递增
1011->1012->1013

而一旦要创设C,则必须连续点击叁回,才会产出响应。

缘由:C的起来编号为1011,它要求比当下的最大+1,才方可被创设。1011->1012->1013->1014

假若四个job的构建编号是相同的(共享同七个),当发生一个新的最大营造编号时,其余job就会冒出三番五次数次点击都未响应。

它直到点击N多次将协调的创设编号累加到比最大的数码+1,那一个job才方可被实施。

每3回创设都爆发了什么?

在jenkins中,每一遍的营造记录都会被封存起来。

保存地点:暗许保存在workspace/job name /创设编号/

每三回创设,都会创设2个以创设编号命令的公文夹

举例表明营造记录发生的文书

  • log:保存着这一次营造在Console中输出的日志
  • build.xml:创设的新闻,包括构建参数,创设结果,运维的用户名,运转时间戳
  • changelog.xml:修改日志

富有job的根目录

C++ 1

单个Job的根目录

C++ 2

单个job的装有创设日志

C++ 3

单个job的单次创设记录

C++ 4

本次创设编号=上次编号+1

吸引上边的bug 原因是多个job使用同一的构建编号。

那就是说大家是何许发现上面的总结公式的吗?

答案:从jenkins的运行日志中

打开 系统一管理理System
Log
(系统日志从java.util.logging捕获Jenkins相关的日记音讯。) –
抱有系统日志

用户的每3回操作,都有记录,能够从日记中发觉上述公式

何以是营造编号

jenkins每一种job的每二次营造都有一个属于本人单独的创设编号,每二遍的构建结果(成功或退步)所接纳的数码都以不同的。

没错的营造编号:各类job的每便营造结果使用不均等的创设编号

C++ 5

谬误的创设编号:八个job的历次营造结果使用同样的创设编号

 C++ 6

 

导致多少个job塑造编号相同的来头

下面的bug是还是不是是jenkins自身引起的啊?

答案:否

打开jenkins的类别设置:

组织者身份登录系统一管理理系统安装主目录高级

 C++ 7

jenkins的私下认可设置中,有3个主目录(workspace),并为每一个job和每2回的创设结果都提供了单独的目录

自个儿原来是想修改暗中同意的workspace(主目录),但错误地删除了jenkins为每叁个job提供的单独目录(把工作空间根目录和创设记录根目录改成了固定值)

留神:主目录(workspace工作空间)是对准全局设置的,对于其他贰个job还足以自定义务工作作空间,在背后的稿子中,笔者会举办介绍。