我有一个Mercurial存储库(在Bitbucket上)和一些代码(Java),我想在基于云的Jenkins服务器上进行CI构建(在Monlastic上运行,在CentOS上运行)。我的问题是我无法在Jenkins服务器上正确安装Mercurial。
Jenkins构建失败,并显示以下消息:
错误:无法克隆https://bitbucket_jenkins_user:some_password@bitbucket.org/repo_owner/my_repository,因为无法找到hg;检查您是否正确配置了Mercurial安装
当我第一次这样做时,我的印象是在Jenkins中安装Mercurial插件就足够了,它还会安装所需的Mercurial二进制文件,以便能够连接到存储库并获取代码。我意识到我错了,在Manage Jenkins / Configure System页面上我需要指定我的Mercurial安装。
由于我的服务器是基于云的,因此获取ssh访问权限是一种付费附加组件,我宁愿避免使用它。但如果那是我唯一的选择,我当然会这样做,从而获得对服务器上运行命令的访问权限。但是,在Centos上运行“yum install mercurial”似乎只给出了Mercurial的1.4版本。当我写这篇文章的当前版本是2.6.3,我是否需要自己下载源代码并自行编译或者是否可以将其作为Centos的二进制文件获取?
答案 0 :(得分:2)
Mercurial插件页面有一节介绍如何使用自动安装选项使用ArchLinux软件包安装Mercurial。
“该插件支持Mercurial安装的通用工具自动安装方法,但它不发布Mercurial版本的目录。对于Linux机器的用户(预装了Python),您可以使用ArchLinux软件包。例如, /在Mercurial安装下配置,使用您喜欢的任何名称添加Mercurial安装,Executable = INSTALLATION / bin / hg,自动安装,运行命令,Label = linux(如果需要将此限制为使用相同标签配置的从属),Command = [-d usr] || wget -q -O - http://www.archlinux.org/packages/extra/i686/mercurial/download/ | xzcat | tar xvf - (或... / x86_64 / ...适用于64位从站),Tool Home = usr,并使用此安装配置作业绑定到Linux奴隶。“
请参阅https://wiki.jenkins-ci.org/display/JENKINS/Mercurial+Plugin