使用 Jenkins 和 Jenkins Job 设置 Mercurial 存储库?

Posted

技术标签:

【中文标题】使用 Jenkins 和 Jenkins Job 设置 Mercurial 存储库?【英文标题】:Setup Mercurial Repository with Jenkins and Jenkins Job? 【发布时间】:2019-07-04 15:16:57 【问题描述】:

我需要设置 Jenkins 以使用托管在 BitBucket 上的 Mercurial 存储库,但在作业尝试轮询存储库时遇到问题。

示例网址:

hg克隆https://joeblogs@bitbucket.org/joeblogs/test2

我还尝试在 Jenkins 的“全局工具配置”中对齐,如下所示:

我还尝试按照列出的方式调整 Jenkins 工作:

当作业轮询 SCM 时,我看到以下消息:

Started on Jul 4, 2019 3:13:00 PM
Polling SCM changes on master
FATAL: SCM revision state is not a Mercurial one
java.io.IOException: SCM revision state is not a Mercurial one
    at hudson.plugins.mercurial.MercurialSCM.compareRemoteRevisionWith(MercurialSCM.java:410)
    at hudson.scm.SCM.compareRemoteRevisionWith(SCM.java:400)
    at hudson.scm.SCM.poll(SCM.java:417)
    at hudson.model.AbstractProject.pollWithWorkspace(AbstractProject.java:1412)
    at hudson.model.AbstractProject._poll(AbstractProject.java:1382)
    at hudson.model.AbstractProject.poll(AbstractProject.java:1293)
    at hudson.triggers.SCMTrigger$Runner.runPolling(SCMTrigger.java:603)
    at hudson.triggers.SCMTrigger$Runner.run(SCMTrigger.java:649)
    at hudson.util.SequentialExecutionQueue$QueueEntry.run(SequentialExecutionQueue.java:119)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Done. Took 2 ms
No changes

请注意,我的 Jenkins 实例在 AWS 云中运行并使用 Ubuntu。

有什么想法吗?

【问题讨论】:

有一个单选按钮,如“旧版”或其他。尝试在那里设置 Mercurial。在某些情况下,实际的 Mercurial 插件无法使用。 【参考方案1】:

该错误是由于您的版本控制中没有名为 default 的分支。如果要使用master分支,请留空。

【讨论】:

以上是关于使用 Jenkins 和 Jenkins Job 设置 Mercurial 存储库?的主要内容,如果未能解决你的问题,请参考以下文章

技术分享 | Jenkins job 机制该如何使用?

Jenkins的新建job和配置job

36-Jenkins-Job迁移

jenkins 批量添加任务job

命令行执行jenkins,构建job(可传递参数)

打造专属测试平台2-使用Python-Jenkins模块调用Jenkins API,修改Job配置并运行