Articles of jenkins

如何使用Datadog监控Jenkins?

datadog插件已安装在Jenkins上。 一旦安装,必须在Jenkins中inputDatadog API密钥和主机名。 两项testing都已通过。 但是,当新的支票已经添加到Datadog查询jenkins检查不返回任何jenkins检查。 期望的情况 目标是使用Datadog监视Jenkins构build: 什么时候开始build造 什么时候完成 build立时间(jenkins.job.duration) 工作是否已经完成(jenkins.job.completed) 构build的状态(jenkins.job.status) 尝试 datadog代理已安装在Jenkins上 jenkins主机被datadog识别 驻留在jenkins上的datadog代理根据datadog启动 根据这个文档 ,为了在Datadog中启用jenkins监控,需要将一些文件添加到datadog中,但是由于它是由datadog本身托pipe的,所以无法访问该文件夹。 根据datadog UI的集成标签,Jenkins插件已被安装和configuration

如何在Jenkins上启动多个AWS EC2机器?

我在Jenkins使用EC2插件( https://wiki.jenkins-ci.org/display/JENKINS/Amazon+EC2+Plugin )来使用AWS服务。 到目前为止,使用这个云标签的工作将使一个EC2实例变得单一。 而我需要旋转多个实例来完成这项工作。 单个EC2实例永远不会超载,因此插件不会旋转任何新的EC2实例; 但作业需要多个实例来分配任务。 每次有20个机器有100个任务(每个机器5个)。 一个实例可以一次完成一个任务。 我如何在Jenkins中为单个作业旋转多个EC2实例(固定数字,例如20)? 谢谢。

从Bitbucket Pull Request触发Jenkins作业

从SCM这样的Bitbucket触发Jenkins作业有很多种方法,但是我想要做的是使用作为Pull Request源的分支触发构build。 到目前为止,我们已经使用了Bitbucket合并请求生成器,但是它非常脆弱,不可靠,而且支持不好。 https://wiki.jenkins-ci.org/display/JENKINS/Bitbucket+pullrequest+builder+plugin Bitbucket在Webhooks方面提供了相当不错的function,当与Jenkins Git Plugin一起使用时,允许基于各种Bitbucket事件(例如,Pull Request更新)触发构build。 还有Bitbucket的Webhook插件,但是再一次没有提供很多关于dynamicselect你想要构build的分支的信息。 https://wiki.jenkins-ci.org/display/JENKINS/BitBucket+Plugin 但是,这似乎是触发回购的一个民意调查,然后在那里试图build立任何分支不同于主分支。 我们的用例是,我们允许开发者创build他们自己的分支,然后他们为开发分支创build合并请求。 似乎没有什么办法可以触发使用开发人员创build的分支作为构build分支的构build(除了前面提到的Bitbucket合并请求构build器)。 我是对还是错?

ProxyPass不要设置响应头

我有一个运行在127.0.0.1:8090的Jenkins服务器和客户端浏览器之间的apache服务器。 我在浏览器中提供了http://123.45.67.89/jenkins ,期望Jenkins被redirect到http://123.45.67.89/jenkins/login页面,但是我被redirect到了http://123.45.67.89/login页面。 在Apache的httpd.conf我试着给ProxyPass和ProxyPassReverse LoadModule proxy_http_module modules/mod_proxy_http.so LoadModule proxy_module modules/mod_proxy.so ProxyPass /jenkins http://127.0.0.1:8090/ ProxyPassReverse /jenkins http://127.0.0.1:8090/ 根据我对ProxyPassReserve理解,它将使用/jenkins/login重写响应头,以便当浏览器再次发送redirect的请求时,它将是http://127.0.0.1:8090/jenkins/login 不知道我的理解是正确的,还是有我缺less的东西?

jenkins:如何validation下载的插件对安全威胁或腐败

我在公司networking的RedHat 7上运行Jenkins 2.67。 它只能通过转发代理访问互联网,仅限于对http URL的请求。 Jenkins默认从http://updates.jenkins-ci.org/update-center.json下载插件列表。 我可以访问http 的版本,但下载的插件列表是相同的,包含约50%的http唯一的URL。 这给我带来了3个问题: 有可能只有httpsurl? 根据这个新的function要求,它不是 如果点1是不可能的,我如何validation下载的插件没有损坏? 我如何validation下载的插件不包含任何威胁? 编辑 也张贴在堆栈溢出 ,它可能会更好

我如何使用Python启动哈德森作业?

我需要从python启动一个hudson作业,然后等待它完成。 本页面提供了一个Python API,在哪里可以find关于此的更多信息? http://wiki.hudson-ci.org/display/HUDSON/Remote+access+API

启动jenkins时出现了org.apache.commons.jelly.JellyTagException错误

我尝试启动jenkins,但得到了错误“org.apache.commons.jelly.JellyTagException:jar:file:/var/run/jenkins/war/WEB-INF/lib/jenkins-core-1.413.jar!/ lib / layout / layout.jelly:130:53:java.lang.StackOverflowError“

如何使Hudson写入远程磁盘?

我有一个问题写入使用Hudson的远程磁盘。 当我手动写入,它的工作。 两台电脑暗示:一台是Windows XP,另一台是Mac mini服务器。 需要远程访问的磁盘位于Mac上。 我成功了以下几点: 在Mac上创build一个用户 给它读取/写入访问要安装在WinXP框上的文件夹 使用上面创build的用户的凭据将文件系统安装在WinXP计算机上 创build几个目录,远程移动文件等(从WinXP电脑) 但是,当哈德森运行我编写的脚本编写的东西在挂载文件夹,它失败,说 BUILD FAILED C:\path\to\build.xml:62: Directory Z:\mac\path creation was not successful for an unknown reason 我可以从同一台计算机(远程)创buildZ:\ MAC \path,它工作得很好。 实际上,该目录已经存在,但是我希望它能够在删除的情况下尝试创build它。 我在本地磁盘上做同样的事情,从不抱怨(目录是否存在)。 相应的Ant指令将会是 <mkdir dir="Z:/mac/path/"/> 我会怀疑某种types的许可问题。 不太确定。 在计算机上安装磁盘的用户不是SYSTEM …而Hudson是由“他”运行的。 WinXP计算机上的用户名与用于安装远程文件系统(NTFS)的Mac用户无关。 我能做些什么? 它很好地安装为Z :. 我可以浏览和编辑它没有问题。 这条线仍然不能在哈德逊计算(虽然它通过C :)。 我不认为有可能使用SYSTEM装载它…请帮助!

只有构build失败时才触发

我正在使用Jenkins 1.430实现部署/回滚过程。 我想将部署和回滚步骤configuration为2个独立的作业,以便在需要时独立触发。 不过,我还希望在部署失败时自动触发回滚。 当我转到部署作业的“构build后操作”configuration部分时,我可以select“ 构build其他项目” 。 如果我检查设置,我可以得到3个选项: 只在构build成功时触发 即使构build不稳定,也会触发 即使构build失败,也触发 我缺less的是只有在构build失败的情况下触发器 。 你知道这可以实现吗?

jenkins中的批量大小文本参数报告错误

我在Jenkins有一个带有文本参数的构build,当我将大数据input到文本区域并尝试构build时,就出现了 [TEST-save_txt_to_file] $ / bin / sh -xe /tmp/hudson3834163952953567847.sh 致命:命令执行失败 java.io.IOException:无法运行程序“/ bin / sh”(目录“/ var / lib / jenkins / workspace / TEST-save_txt_to_file”):java.io.IOException:error = 7,参数列表太长 在java.lang.ProcessBuilder.start(Unknown Source) 在hudson.Proc $ LocalProc。(Proc.java:244) 在hudson.Proc $ LocalProc。(Proc.java:216) 在hudson.Launcher $ LocalLauncher.launch(Launcher.java:763) 在hudson.Launcher $ ProcStarter.start(Launcher.java:353) 在hudson.Launcher $ ProcStarter.join(Launcher.java:360) 在hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:91) 在hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:60) 在hudson.tasks.BuildStepMonitor $ 1.perform(BuildStepMonitor.java:19) 在hudson.model.AbstractBuild $ AbstractBuildExecution.perform(AbstractBuild.java:814) 在hudson.model.Build $ BuildExecution.build(Build.java:199) 在hudson.model.Build $ […]