我不知道为什么"登录用户可以做任何事情"意味着Jenkins很乐意允许未经过身份验证的用户查看项目详细信息并访问工件......无论如何,我需要知道如何让Jenkins允许登录用户访问任何东西并为未登录的用户隐藏一切.请帮忙吗?
通过"Java web start"连接到Jenkins服务器的Windows从属节点.节点的系统信息没有IP地址.
我必须遍历我们拥有的所有从属节点,并找到哪个机器(IP地址)对应于Jenkins中的从属节点.
有没有办法从Jenkins本身找到从节点的IP地址?
基本上我们升级到xcode 6.1,我们的构建正在获取"ResourceRules.plist:无法读取资源"错误.
我们有一台Jenkins服务器为我们提供ios版本.我们使用Jenkins上的Xcode插件进行实际构建和签名.有关如何在不手动打开xcode的情况下进行此更改以及在其他答案中找到此解决方案的任何想法:
单击您的项目>目标>选择目标>构建设置>
代码签名资源规则路径
并添加:
$(SDKROOT)/ResourceRules.plist
我对Xcode和iOS构建起来很新.我在Unity-iPhone.xcodeproj文件中找到了project.pbxproj文件.它看起来像包含/*Begin XCBuildConfiguration部分*/部分下的构建设置,它列出了在Xcode中找到的类似构建属性,但是我没有看到类似"代码签名资源规则路径"的内容.
有没有人有手动编辑这个文件的经验?总的来说这是个坏主意吗?
谢谢
我想知道如何更改Jenkins的默认端口8080.使用linux或windows,这只需使用配置文件即可完成.但Jenkins的Mac配置文件看起来与其他文件完全不同.
当然,启动服务器时可以传递--httpPort参数,但我想在配置文件中执行此操作.
那有选择吗?
PS:通过apache传递Jenkins实例将有点解决问题,但我想更改Jenkins端口.
谢谢!
我正在使用Jenkins,Maven 3.1和Java 1.6.我在Jenkins设置了以下Maven工作,具有以下目标和选项......
clean install -U -P cloudbees -P qa
Run Code Online (Sandbox Code Playgroud)
下面是我的pom.xml surefire配置...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.17</version>
<configuration>
<reuseForks>true</reuseForks>
<argLine>-Xmx2048m -XX:MaxPermSize=512M </argLine>
<skipTests>false</skipTests>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
但是,当我的单元测试失败时,Jenkins控制台输出仍然显示"BUILD SUCCESS"并且构建被标记为"不稳定"而不是完全失败.我如何配置Jenkins(或Maven,如果它是什么原样)的东西,以便我的构建失败(不会变得不稳定或通过),如果任何单元测试失败?
以下是控制台输出的内容
17:08:04 MyProjectOrganizationControllerTest.testRecoverFromError » IllegalState Failed to...
17:08:04 MyProjectOrganizationControllerTest.testVerifyDistrictListPopulated » IllegalState
17:08:04 MyProjectOrganizationControllerTest.testUpdateSchool » IllegalState Failed to loa...
17:08:04 MyProjectOrganizationControllerTest.testDeleteSchool » IllegalState Failed to loa...
17:08:04 MyProjectOrganizationControllerTest.testVerifyOrgListPopulatedPrivateSchoolOrgType » IllegalState
17:08:04 MyProjectOrganizationControllerTest.testSubmitMultipleParams » IllegalState Faile...
17:08:04
17:08:04 Tests run: 155, Failures: 0, Errors: 154, Skipped: 1
17:08:04
17:08:04 [ERROR] There are test failures.
17:08:04
17:08:04 …Run Code Online (Sandbox Code Playgroud) 我正在运行一个Jenkins集群,在Master和Slave中,它们都作为Docker容器运行.
主机是在MacOS上运行的最新boot2docker VM.
为了让Jenkins能够使用Docker执行部署,我已将docker.sock和docker客户端从主机安装到Jenkins容器,如下所示: -
docker run -v /var/run/docker.sock:/var/run/docker.sock -v $(which docker):/usr/bin/docker -v $HOST_JENKINS_DATA_DIRECTORY/jenkins_data:/var/jenkins_home -v $HOST_SSH_KEYS_DIRECTORY/.ssh/:/var/jenkins_home/.ssh/ -p 8080:8080 jenkins
Run Code Online (Sandbox Code Playgroud)
将卷安装到在Jenkins容器内运行的Docker容器时,我遇到了问题.例如,如果我需要在Jenkins容器中运行另一个Container,我会执行以下操作: -
sudo docker run -v $JENKINS_CONTAINER/deploy.json:/root/deploy.json $CONTAINER_REPO/$CONTAINER_IMAGE
Run Code Online (Sandbox Code Playgroud)
上面运行容器,但文件"deploy.json"不是作为文件挂载,而是作为"目录"挂载.即使我将目录作为卷安装,我也无法查看生成的容器中的文件.
这是一个问题,因为Docker在Docker案例中由于文件权限?
任何指针都会有用!
谢谢!
在阅读了解释Pipeline插件的Jenkins 教程后,似乎插件应该可以实现Post-Build步骤.但是,文档在具体说明方面相当有限.
例如,我想知道如何实现:
- 仅在构建成功时运行
- 仅在构建成功或不稳定时运行
- 无论构建结果如何都运行
仅在构建成功时运行
stage 'build'
... build
... tests
stage 'post-build'
...
Run Code Online (Sandbox Code Playgroud)
(或添加-Dmaven.test.failure.ignore=false到MAVEN_OPTS)
仅在构建成功或不稳定时运行
stage 'build'
... build
try {
... tests
} catch {
...
}
stage 'post-build'
...
Run Code Online (Sandbox Code Playgroud)
(或添加-Dmaven.test.failure.ignore=true到MAVEN_OPTS)
无论构建结果如何运行 - 是否可以使用try / catch / finally?
try {
stage 'build'
...
} catch {
...
} finally {
stage 'post-build'
...
}
Run Code Online (Sandbox Code Playgroud)(我注意到最终的构建状态被设置为SUCCESS,即使某些阶段,即'build'在基于最后阶段设置时失败了.这是否意味着最终构建状态需要明确设置,即currentBuild.result = 'UNSTABLE'?)
我有两个Jenkins管道,比方说管道-A和管道-B.我想在管道B中调用管道-A.我怎样才能做到这一点?
(管道-A是管道-B的子集.管道-A负责做一些可以在管道-B中重复使用的例行程序)
我在我的机器上安装了Jenkins 2.41.
我有一个相当复杂的Jenkins工作,它构建,单元测试和打包Web应用程序.根据具体情况,一旦这项工作完成,我想做不同的事情.我没有找到可重用/可维护的方法来做到这一点.是真的如此,还是我错过了什么?
我复杂的工作完成后我想要的选项:
没做什么
启动我的低风险更改构建管道:
启动我的高风险更改构建管道:
我还没有找到一个简单的方法来做到这一点.最简单但不易维护的方法是制作三个独立的工作,每个工作都会启动下游构建.这种方法让我害怕有几个原因,包括必须在三个地方而不是一个地方进行变更.此外,许多下游工作也几乎相同.唯一的区别是他们称之为下游工作.工作的激增似乎会导致无法维持的混乱局面.
我已经考虑过使用几种方法将其作为一项工作,但到目前为止还没有工作:
使工作成为一个多配置项目(https://wiki.jenkins-ci.org/display/JENKINS/Building+a+matrix+project).这提供了一种使用参数注入作业的方法.我还没有找到一种方法让"构建其他项目"步骤响应参数.
使用Parameterized-Trigger插件(https://wiki.jenkins-ci.org/display/JENKINS/Parameterized+Trigger+Plugin).此插件允许您根据特定触发器触发下游作业.但是触发器似乎限制性太强.它们都是基于构建的状态,而不是任意变量.我没有看到这里提供的任何选项适用于我的用例.
使用Flexible Publish插件(https://wiki.jenkins-ci.org/display/JENKINS/Flexible+Publish+Plugin).这个插件与参数化触发器插件有相反的问题.它有许多有用的条件可以检查,但它看起来不像它可以开始构建另一个项目.它的行动仅限于发布类型的活动.
使用Flexible Publish + Any Build Step插件(https://wiki.jenkins-ci.org/display/JENKINS/Any+Build+Step+Plugin).Any Build Step插件允许任何构建操作可用于Flexible Publish插件.虽然此插件激活后可以使用更多操作,但这些操作不包括"构建其他项目".
真的没有一个简单的方法吗?我很惊讶我没有找到它,甚至更惊讶我没有真正看到任何其他人试图这样做?我做的事情不寻常吗?有什么明显的东西让我失踪吗?
我想配置jenkins,以便在git存储库的任何分支中发布新标记时开始构建.如何配置此行为?
我是jenkins的新人,请原谅我,如果这可能是一个非常基本的问题,但我找不到自己.

触发:

谢谢你的帮助