我正在尝试使用 Jenkinsfile 实现一个新的 Jenkins 管道。
GIT存储库并没有在每个分支上都有一个Jenkinsfile,只是在一个特定的分支下(因为我目前正在为一个遗留存储库构建CI)。
Jenkins管道是使用以下配置创建的:
**
詹金斯文件
网络钩子是在我的比特桶html" target="_blank">存储库中自动创建的,并且构建被很好地触发(当我使用Jenkinsfile
在分支上推送修改时)。
但是,Jenkins不会检查钩子中发送的提交(与另一个分支的HASH不同)。因此,构建崩溃为Jenkinsfile
不存在于另一个分支上(并且永远不会存在于旧的遗留分支上)。
> git fetch --tags --force --progress -- http://mybitbucket:port/scm/vs/myrepo.git +refs/heads/*:refs/remotes/myrepo/* # timeout=10
Seen branch in repository myrepo/old-branch-a
Seen branch in repository myrepo/old-branch-b
...
Seen 40 remote branches
> git show-ref --tags -d # timeout=10
Checking out Revision 0a781a1bd4ad194aae911ce26d1ec4cd1e73dd76 (myrepo/old-branch-x)
> git config core.sparsecheckout # timeout=10
> git checkout -f 0a781a1bd4ad194aae911ce26d1ec4cd1e73dd76 # timeout=10
Commit message: "my commit message"
First time build. Skipping changelog.
Posting build status of INPROGRESS to mybitbucket for commit id [0a781a1bd4ad194aae911ce26d1ec4cd1e73dd76] and ref 'null'
ERROR: /var/jenkins_home/workspace/myrepo@script/Jenkinsfile not found
技术背景:
我无法理解为什么选择这个版本而不是在钩子中发送的版本。
非常感谢你的帮助!
我一直被误导了。
事实证明,我需要使用<code>多分支管道
我仍然对常规管道的行为感到沮丧,这对我来说毫无意义,而且似乎记录得很差。
问题内容: 我有这个错误: 当但奇怪的是,更新此插件时发生错误:管道共享Groovy库,在此工作正常之前,我使用jenkins v 2.21和管道2.4,而我的代码是下一个: 问题答案: Jenkins作业可以保存在执行中,这需要对它们进行序列化。rawBuild的内容无法序列化,因此,如果要访问它,则需要在以开头的函数中进行序列化。例如:
我正在尝试使用mysqlworkbench从mysql导出数据。我得到以下错误。 错误检查mysqldumpversion错误检索版本从C:\程序文件\MySQL\MySQL服务器5.6\bin\mysqldump.exe:退出(1) 我在 mysqldump 工具和 mysql 的编辑首选项中为 mysqldump 设置了正确的目录.exe但仍然收到此错误。我正在使用MySQL 5.6和Work
问题内容: 我在Jenkinsfile中遇到Jenkins管道的问题。我的Jenkins实例上有4个不同的nodeJs版本。我想选择要在管道中使用的那个,但是官方插件示例(https://wiki.jenkins- ci.org/display/JENKINS/NodeJS+Plugin )根本不起作用。 我尝试了第一种方法,但由于$ PATH被该部分覆盖而失败。 我尝试了第二种方法,但失败了,因
问题内容: 我希望能够说些类似的话: 用例:我正在并行构建和测试在不同平台上的运行,并希望确保每个都获得相同的代码。它是C ++,我们建立在独立的平台上,也建立在它们之上。 如果执行上述操作,它将失败-基础代码假定给定的分支实际上是一个分支,或者得到类似以下内容的代码: 尽管没有实际答案,但我看到过有人问过这个问题,尽管有一些建议-只是喜欢隐瞒源代码,等等。这并不是我真正想要的。 该文档建议应该有
问题内容: 我在执行正则表达式匹配的函数前使用,即使使用注释,我仍然遇到错误。 请注意,它会多次调用该函数,并且仅在实际匹配后才会发生异常。 这是我的代码: 进行詹金斯构建时的输出: 问题答案: 可能是由于范围可变。尝试像这样限制它: 在全局脚本绑定中创建没有变量的变量,因此从方法退出后仍然存在。
我正在本地可信环境中运行Jenkins,我正在尝试运行此管道。此Jenkinsfile已签入git。 最初几次运行构建时,我需要手动批准变更(Jenkins-