在向Controller定义新的扩展项目后,我遇到两个问题:
在构建阶段,它会要求输入密码,导致密码失败,因为它不是交互式的(从Jenkins运行)。
如果我从命令行运行construct.xml并手动输入用户名和密码,它似乎工作正常,但只从github获取主分支。
无论哪种方式,构造阶段都会死亡,并且Controller无法部署到Web服务器。在Controller配置中还需要做些什么来使其工作吗?
答案 0 :(得分:4)
首先是密码问题:
检查您是否设置了ssh密钥(请参阅http://help.github.com/mac-set-up-git/和http://help.github.com/linux-set-up-git/)?您可以使用以下命令检查SSH是否已正确设置:
$ ssh -T git@github.com
你善变!您已成功通过身份验证,但GitHub不提供shell访问权限。
接下来,如果ssh没问题且您仍然遇到您描述的问题,请检查您用于遥控器的网址:
$ git remote -v
origin git@github.com:acountname / repo.git(fetch)
来源git@github.com:acountname / repo.git(推)
请注意,您应该使用git协议,而不是https。如果错误,您可以在Controller配置中输入正确的URL并运行构建,否则从命令行可以使用以下命令更改它:
$ git config remote.origin.url git@github.com:accountname/repo.git
在内部,Controller使用“git fetch --all”。出于某种原因,这在使用https协议时不会获取所有分支,但ssh协议会这样做。