我需要设置哪些插件和插件功能才能让我的Jenkins作业在任何时候将代码提交给SVN项目时触发构建?
我已经安装了标准SVN插件以及SVN标记插件,但我没有看到任何允许触发器配置的新功能.
我试图执行一个shell脚本,如果构建通过或在Jenkins后构建后失败.我在后期构建中看不到这个选项来执行一些shell脚本,除了运行目标.
我为jenkins设置了一个新的Vhost:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName ci.company.com
ServerAlias ci
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPreserveHost on
ProxyPass / http://localhost:8080/
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
...使用代理,当我重新启动apache时,我得到这样的错误:
Invalid command 'ProxyRequests', perhaps misspelled or defined by a module not included in the server configuration
Run Code Online (Sandbox Code Playgroud) 在设置Jenkins如何从subversion中获取更改时,我尝试检查Poll SCM并设置schedule 5 * * * *,我收到以下警告
使用'H****'而不是'5****'均匀分散负载
我不确定H在这种情况下的含义以及为什么我应该使用它.
我正在尝试使用Maven 发布Jenkins插件(stashNotifier)并面临发布插件的问题.
mvn clean release:prepare
Run Code Online (Sandbox Code Playgroud)
运行完成没有错误但无法在我的本地git存储库中提交更改的pom.xml.即使它确实标记了我试图发布版本1.0.2的分支的HEAD.这是我的本地分支在准备发布之前的样子
* df60768 (HEAD, origin/develop, develop) upgraded parent pom to version 1.498
* 792766a added distribution management section to pom.xml and amended readme.md
Run Code Online (Sandbox Code Playgroud)
这就是它之后的样子
* df60768 (HEAD, tag: stashNotifier-1.0.2, origin/develop, develop) upgraded parent pom to version 1.498
* 792766a added distribution management section to pom.xml and amended readme.md
Run Code Online (Sandbox Code Playgroud)
不幸的是,pom.xml已经包含下一个开发版本,这反过来会导致后续版本:执行以释放该快照版本.
从maven的命令输出,它几乎看起来像是省略了git commit命令:
[INFO] Checking in modified POMs...
[INFO] Executing: /bin/sh -c cd /Users/gruetter/Dropbox/stashNotifier && git add -- pom.xml
[INFO] Working directory: /Users/gruetter/Dropbox/stashNotifier
[INFO] Executing: …Run Code Online (Sandbox Code Playgroud) 我试图通过REST API将外部系统与jenkins集成.
虽然我在其API参考上做了很多谷歌搜索,但我仍然无法获得jenkins REST API参考的完整列表.
有人知道吗?
我们已经尝试过如下所示的方法:
在多天搜索网络了好几个小时之后,我们仍然没有找到有关这方面的有用资源.因此,在这里提出一个新问题似乎是有道理的.
我们正在开发IntelliJ想法中的Java项目,并希望将我们的构建与Jenkins集成.当我们在Idea中创建Jenkins文件时,我们不会获得语法突出显示或自动完成.由于我们是Jenkins的新手,这些功能对我们非常有用.我们怎样才能让Idea更加支持Jenkinsfiles?
如果没有办法在想法中获得Jenkins文件的语法高亮和自动完成,那么其他编辑器会有什么帮助?
请注意:
我们已经尝试过插件https://github.com/oliverlockwood/jenkinsfile-idea-plugin.当插件被激活时,Jenkins文件被识别为,但是语法高亮显示我们收到错误消息,请参阅下文.
pipeline {
agent { docker 'maven:3.3.3' }
stages {
stage('build') {
steps {
sh 'echo Hello, World!'
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
Idea强调'管道'的'p'为错误.错误消息显示:
JenkinsTokenType.COMMENT,JenkinsTokenType.CRLF或JenkinsTokenType.STEP_KEY预期,获得'p'
谢谢你的帮助!
我目前正在使用jenkins/hudson进行持续集成,主要是一个C++项目.我们为主干和每个分支都有单独的项目.此外,还有一些Java代码的相关项目,但是这些项目的设置现在相当基础(我们可能会在稍后做更多).C++项目执行以下操作:
一切都可以配置为自动构建,可选配置为按需构建.在下面,有一个bash脚本控制其中的大部分内容,这更依赖于我们的构建系统,它使用automake和autoconf以及自定义bash脚本.
我们开始使用Hudson(当时)因为这是Java人员正在使用的东西,我们只想要夜间构建.从那时起,我们增加了很多,并继续增加更多.在某些方面哈德森很棒,但肯定不理想.
我已经看过其他解决方案了,唯一看起来像是替代品的是buildbot.buildbot会更好地适应这种情况吗?自从我们已经在使用Hudson以来,投资是否值得?为什么?
编辑:有人问为什么我没有发现哈德森/詹金斯是理想的.简短的回答是一切都可以改进.我只是想知道,如果詹金斯是我的使用情况或是否有更好的东西(buildbot?),这将是更容易保持在即使有新的要求上来从长远看目前最好的解决方案.
我在Jenkins的一个项目中有一个子模块.我已启用高级设置以递归更新子模块.
当我运行构建时,我看到工作区有子模块中的文件.问题是,它似乎是子模块的第一次修订.当我推送更改(在GitHub上托管的存储库)时,Jenkins似乎不更新子模块以获得正确的更改.有没有人见过这个?
例如:
var output=sh "echo foo";
echo "output=$output";
Run Code Online (Sandbox Code Playgroud)
我会得到:
output=0
Run Code Online (Sandbox Code Playgroud)
所以,显然我得到退出代码而不是标准输出.是否有可能将stdout捕获到管道变量中,这样我就可以得到:
output=foo
作为我的结果?