在jenkins中配置git存储库的端口

时间:2015-01-16 05:31:25

标签: git ssh jenkins jenkins-plugins ssh-keys

我正在尝试在Jenkins中创建一个Maven项目。该代码位于Git存储库中,该存储库使用非标准端口1754。

端口详细信息已存在于配置文件中,但jenkins中的git插件无法连接。它为端口22提供了错误。

在添加以下网址后,Jenkins(Git部分)中出现错误gitolite@10.115.2.110:AutomationCode

  Failed to connect to repository : Command "/usr/bin/git -c 
  core.askpass=true ls-remote -h gitolite@10.115.2.110:AutomationCode 
  HEAD" returned status code 128:
  stdout: 
  stderr: ssh: connect to host 10.115.2.110 port 22: Connection refused 
  fatal: Could not read from remote repository.
  Please make sure you have the correct access rights
  and the repository exists.

当我直接从终端克隆git存储库时,它工作正常,但在Jenkins中它没有使用配置文件进行端口。

我尝试过提供ssh网址,但它也无效。 "Connection refused" error 即将到来。 我尝试在管理Jenkins -> configure system page in SSH Server部分中提供固定端口号。但仍然没有解决问题。

我们可以通过哪种方式配置项目以使用Jenkins中的特定端口 - > Git或者可以访问.ssh / config文件来获取端口号?

我使用SSH密钥访问git。

2 个答案:

答案 0 :(得分:1)

如果您使用相同的网址(gitolite@10.115.2.110:AutomationCode)从命令行克隆,则:

  • 您使用的是端口22(ssh的标准),或者如下所示,带有" Host gitolite"的〜/ ssh / config文件条目。
  • 您可能没有使用与Jenkins相同的〜/ .ssh,因为您在帐户的命令行中。

打开你的Jenkins工作' env'查看环境变量(和用户名)是否与您在终端中看到的相同。

答案 1 :(得分:0)

找到https://serverfault.com/questions/218256/specify-ssh-port-for-git

使用jenkins登录,切换到home dir(默认为/ var / lib / jenkins),在.ssh / config中设置端口,并从git@foo.com删除端口:[port] /git/bar.git from管道脚本,然后git clone成功。 我认为这很乏味,但它确实有效。

注意:您必须在远程git服务器上拥有ssh公钥。