Questions tagged «jenkins»

Jenkins是可扩展的开源持续集成服务器

2
使用Jenkins和Sonar的SSL正确的Apache反向代理配置
我正在Apache服务器后面运行两项服务:Jenkins(端口8080)和SonarQube(端口9000)。 我的Apache配置看起来像这样: <VirtualHost *:80> ServerName server Redirect permanent / https://server.domain.com/ </VirtualHost> <VirtualHost *:80> ServerName server.domain.com Redirect permanent / https://server.domain.com/ </VirtualHost> <VirtualHost *:443> ServerName server.domain.com SSLEngine on SSLCertificateFile /etc/ssl/certs/server.crt SSLCertificateKeyFile /etc/ssl/private/server.key ProxyPass /jenkins http://localhost:8080/jenkins nocanon ProxyPassReverse /jenkins http://localhost:8080/jenkins ProxyPassReverse /jenkins http://server.domain.com/jenkins ProxyPassReverse /jenkins https://server.domain.com/jenkins ProxyPass /sonar http://localhost:9000/sonar nocanon ProxyPassReverse /sonar http://localhost:9000/sonar …

4
将Amazon Elastic Container Registry与Jenkins集成
我正在尝试将Amazon的新Elastic Container Registry(ECR)与我的Jenkins构建服务集成在一起。我正在使用Cloudbees Docker Build&Publish插件来构建容器映像并将其发布到注册表。 要使用ECR而不是我的私有注册表,我运行了AWS CLI命令aws --region us-east-1 ecr get-login,该docker login命令会生成一个要运行的命令-但我只是复制了密码,并从该密码创建了类型为“带有密码的用户名”的Jenkins凭证(用户名是始终为“ AWS”)。 而且效果很好!问题在于,AWS CLI生成的ECR密码仅有效12个小时。因此,现在,我必须每天两次手动重新生成密码,并手动更新Jenkins凭证屏幕,否则我的构建会开始失败。 有没有一种方法可以生成永久性的ECR登录令牌,或者以某种方式自动生成令牌?

3
从GitLab Web钩子触发Jenkins构建以进行合并请求
我希望Jenkins(1.561)构建由合并请求Web挂钩触发的提交到GitLab(6.7.5)的合并(拉)请求。我有一个参数化的构建,以及Jenkins插件“ GitLab合并请求生成器”(1.2.0)和“ GitLab挂钩”(1.0.0)。不幸的是,迁移到Jenkins CI并不是一个现实的选择。 只要变量,和可用,合并请求构建器插件就可以构建合并请求。当插件轮询存储库本身时,或者当我使用手动有效负载(例如)触发构建时,这种方法效果很好,但是我无法通过钩子来完成。gitlabMergeRequestIdgitlabTargetBranchgitlabSourceBranchcurl --data "gitlabMergeRequestId=3&so_on http://server_name/job/$JOB_NAME/buildWithParameters 使用GitLab Hook插件,我能够在JSON有效负载中获取必要的数据,但是值具有“错误”键: gitlabMergeRequestId 是 id gitlabTargetBranch 是 target_branch gitlabSourceBranch 是 source_branch 我尝试使用GitLab合并请求生成器插件的要求配置构建参数,将Name变量值配置为Default Value。不幸的是(可能是有意的),Default Value字段中的变量没有被替换,因此Jenkins正在寻找具有id ${id}和类似分支值的合并请求。 我没有找到配置从GitLab发送的有效负载的方法,并且既没有GitLab Hook插件的配置选项,也没有GitLab Merge Request Builder插件使用的参数名称的配置选项。 我正在考虑编写一个小的PHP脚本,以在将其传递给Jenkins之前拦截并更改POST中的有效负载。尽管我确信这将奏效,但它显然似乎不必要地复杂。 我可以看到的唯一其他真正的选择是更改插件的来源,但这使升级它们成为PITA。 我是否忽略了一些显而易见的事情,或者真的没有一种更简单的方法来触发从GitLab到Jenkins的Web挂钩触发Merge Request构建?

2
如何在不重新启动的情况下以编程方式修改jenkins作业配置?
Jenkins作业具有config.xml文件,该文件存储该作业的配置。 我有一个“作业管理器”作业,它可以修改其他作业的配置,但是如果不重新启动Jenkins,我似乎无法让它确认新的配置。 奇怪的是,jenkins-cli.jar命令行工具似乎没有此操作的选项。 这是可能的编辑通过Web界面的配置,并有保存/承认没有重新启动,所以它似乎并不认为这将是一个技术是不可能的。 我最好的尝试是尝试发布到与Web界面相同的地址 wget --post-file=config.xml --user=joe.shmoe --password=secret01 \ --no-check-certificate \ https://jenkins.company.com/job/myProject/config.xml ...但是尽管使用了有效的凭据,我还是得到了403(复制粘贴以确保没有错别字) 任何人有任何想法或知道我缺少的简单知识吗?
10 hudson  jenkins 

2
AWS凭证如何授予詹金斯管道?
我的詹金斯管道中有以下配置 s3Upload( file:'ok.txt', bucket:'my-buckeck', path:'file.txt') 问题是s3Upload函数无法使用我存储在jenkins中的AWS访问密钥 我与以下代码绑定 withAWS(profile:'Test Publisher') { s3Upload( file:'ok.txt', bucket:'my-buckeck', path:'file.txt') } 我在詹金斯的s3个人资料就是这样。仍在获取配置文件找不到错误。如何使用s3Upload函数将文件从jenkins上传到s3?


1
Jenkins将不提供CA签名证书
tl; dr已修复 我使用自签名证书运行Jenkins实例已有一段时间了,除了不必在浏览器中创建证书验证异常的麻烦之外,该实例运行良好。因此,今天我从StartSSL获得了免费的1层证书,更改了中的路径/etc/sysconfig/jenkins,然后重新启动了该服务,但是它根本不起作用: $ openssl s_client -connect localhost:8080 -debug CONNECTED(00000003) write to 0xdce210 [0xdeeca0] (171 bytes => 171 (0xAB)) 0000 - 16 03 01 00 a6 01 00 00-a2 03 03 52 e3 f5 18 90 ...........R.... 0010 - e2 24 10 6a 6e ee 24 88-cd 52 e8 a8 …
9 ssl  jenkins 

2
为什么Jenkins用户没有访问Docker unix套接字的权限?
我已将该jenkins用户添加到docker组中,认为这将允许Jenkins作业运行Docker命令。如果我切换到jenkins用户,则可以验证它是否可以(手动): ubuntu@hostname:~$ ps aux | grep java jenkins 2210 9.5 7.5 1950316 292896 ? Sl 00:01 1:00 /usr/bin/java -jar /data/jenkins/jenkins-1.586.war --httpPort=8080 -Xloggc:/var/log/jenkins/gc.log ubuntu@hostname:~$ getent group docker docker:x:999:jenkins ubuntu@hostname:~$ ls -la /var/run/docker.* -rw-r--r-- 1 root root 4 Oct 23 18:32 /var/run/docker.pid srw-rw---- 1 root docker 0 Oct 23 18:32 /var/run/docker.sock ubuntu@hostname:~$ …

4
我应该使用哪个Java版本运行Jenkins?
参考:Jenkins用户:: Windows上的Jenkins:Java + JRE(版本)混乱 我应该使用哪个Java版本(在Windows上)运行Jenkins?我应该使用Windows master附带的JRE吗?我应该使用最新的1.6版本吗?我应该只在当前的1.7版本上运行它吗?(请注意,我正在运行独立版本。) 我在Jenkins页面上可以找到的所有内容是:要运行Jenkins,至少需要具有JRE 1.5或更高版本。 另外:我的Windows服务器仍然是32位2k3,但是您如何在64位平台上运行Jenkins?32位还是64位JVM? 请注意,此问题仅与我用来运行Jenkins实例的JRE(或JDK)有关。我不关心用于构建Java程序的JDK。

5
在Tomcat7中设置JENKINS_HOME?
我正在尝试在Ubuntu的Tomcat7中设置Jenkins。我安装了Tomcat7并进行了部署jenkins.war,现在在可以看到Jenkins主页http://myhost:8080/jenkins,但是/usr/share/tomcat7/.jenkins出于安全原因,它试图在上创建Jenkins目录。我已经创建/srv/jenkins并授予了tomcat7组权限,并且想要设置JENKINS_HOME为该路径。我试过将它添加到tomcat配置中/etc/tomcat7/server.xml: <GlobalNamingResources> <Environment name="JENKINS_HOME" value="/srv/jenkins" type="java.lang.String" override="false"/> <!-- Default settings --> 而且我还尝试将其添加到中的自动创建的上下文文件中ROOT/META-INF/context.xml($CATALINA_HOME/conf据我所知没有)。 <Context path="/" antiResourceLocking="false" > <Environment name="JENKINS_HOME" value="/srv/jenkins/" type="java.lang.String"/> </Context> 但是即使重新启动tomcat7之后,我仍然得到相同的结果(尝试使用/usr/share/tomcat7/.jenkins)。 我在哪里需要JENKINS_HOME在Tomcat7中设置环境变量?

3
Jenkins CI-无法分配内存
我在本地计算机上的ubuntu 10.4(具有vmware融合)上成功测试了jenkins-ci。现在,我想在hosteurope的虚拟服务器上安装并使用它。基本安装没有问题,但是现在我的构建项目遇到了问题。 从存储库中提取更新后,ant被调用并在我的构建项目中引发以下错误: “构建文件:/var/lib/jenkins/workspace/concrete5-seed-clean/build.xml [属性] java.io.IOException:无法运行程序“ / usr / bin / env”:java.io.IOException:error = 12,无法分配内存” hosteurope(http://faq.hosteurope.de/index.php?cpid=13918)的虚拟服务器上的堆大小存在已知问题,因此我尝试手动设置堆大小: # for ant export ANT_OPTS="-Xms512m -Xmx512m" # jenkins # edited /etc/default/jenkins, added line JAVA_ARGS="-Xms512m -Xmx512m" # restarted jenkins via /etc/init.d/jenkins restart 在为ant设置此选项后,命令“ ant -diagnostics”将运行并不会导致错误,但是当我尝试构建项目时仍会发生错误。 服务器详细信息:-http: //www.hosteurope.de/produkt/Virtual-Server-Linux-L Ubuntu 10.4 LTS 内存:1GB /动态2GB 我的问题:-1GB足以容纳Jenkins,还是必须升级服务器?-这个错误是由蚂蚁还是詹金斯引起的? 更新:我使用ant选项-Xmx128m -Xms128m运行它,但有时会再次发生该错误。(这吓到我了,因为我现在无法复制它:/) 帮助非常感谢! …
9 java  jenkins 

1
如何在Jenkins中管理群组和用户
我正在尝试在Jenkins中使用基于角色的安全性插件,但我不起诉我是否正确使用了它。 我决定将jenkin自己的用户数据库(而不是LDAP)用作安全领域。我正在逐一添加用户。 现在,在“分配角色”屏幕中,我具有全局角色,如管理员,只读等...,而我具有项目特定的角色,如prod_a_developer,prod_b_developer ... 对于每个用户,我是否既要为其分配全局角色之一,又要分配特定的项目角色? 另外,如何将用户分配给组?而不是为每个用户分配一个全局角色,我想为一个组分配一个全局角色。 不那么琐碎, 有人可以帮帮我吗 ? 谢谢。
8 ldap  hudson  jenkins 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.