每次我尝试使用TeamCity构建托管在gitlab服务器上的Maven项目时,我都会从buildAgent中收到错误。 TeamCity和GitLab都在同一台服务器上。
似乎代理无法连接到gitlab,但确实如此,因为当我必须在构建配置部分指定pom.xml路径时,我可以浏览存储库文件夹(http://prntscr.com/i8pyjf )。
我已尝试过不同的解决方案:
TeamCity版本 - > TeamCity Professional 2017.2.2(build 50909)
这里是错误日志:
[22:03:51] The build is removed from the queue to be prepared for the start [22:03:51] Collecting changes in 1 VCS root [22:03:51] [Collecting changes in 1 VCS root] VCS Root details [22:03:51] [VCS Root details] "git@151.80.136.106:Developer/BanlogBridge.git" {instance id=11, parent internal id=1, parent id=Ban_Git15180136106DeveloperBanlogBridgeGit, description: "git@151.80.136.106:Developer/BanlogBridge.git#master"} [22:03:51] [Collecting changes in 1 VCS root] Compute revision for 'git@151.80.136.106:Developer/BanlogBridge.git' [22:03:51] [Compute revision for 'git@151.80.136.106:Developer/BanlogBridge.git'] Upper limit revision: 0d41a12c788798152c7da9327ef63b759f7d5b4c [22:03:51] [Compute revision for 'git@151.80.136.106:Developer/BanlogBridge.git'] Cannot find modification with revision 0d41a12c788798152c7da9327ef63b759f7d5b4c [22:03:51] [Compute revision for 'git@151.80.136.106:Developer/BanlogBridge.git'] No modification from VCS root is attached to build configuration, use upper limit revision [22:03:51] [Compute revision for 'git@151.80.136.106:Developer/BanlogBridge.git'] Computed revision: 0d41a12c788798152c7da9327ef63b759f7d5b4c [22:03:51] Starting the build on the agent Default Agent [22:03:52] Clearing temporary directory: /usr/local/teamcity/buildAgent/temp/buildTmp [22:03:52] Publishing internal artifacts [22:03:52] [Publishing internal artifacts] Publishing 1 file using [ArtifactsCachePublisher] [22:03:52] [Publishing internal artifacts] Publishing 1 file using [WebPublisher] [22:03:52] Using vcs information from agent file: db80d9c7294729d5.xml [22:03:52] Checkout directory: /usr/local/teamcity/buildAgent/work/db80d9c7294729d5 [22:03:52] Updating sources: auto checkout (on agent) [22:03:52] [Updating sources] Will use agent side checkout [22:03:52] [Updating sources] VCS Root: git@151.80.136.106:Developer/BanlogBridge.git [22:03:52] [VCS Root: git@151.80.136.106:Developer/BanlogBridge.git] revision: 0d41a12c788798152c7da9327ef63b759f7d5b4c [22:03:52] [VCS Root: git@151.80.136.106:Developer/BanlogBridge.git] Git version: 2.7.4.0 [22:03:52] [VCS Root: git@151.80.136.106:Developer/BanlogBridge.git] Will use native ssh (teamcity.git.use.native.ssh=true) [22:03:52] [VCS Root: git@151.80.136.106:Developer/BanlogBridge.git] Update checkout directory (/usr/local/teamcity/buildAgent/work/db80d9c7294729d5) [22:03:52] [Update checkout directory (/usr/local/teamcity/buildAgent/work/db80d9c7294729d5)] /usr/bin/git config core.sparseCheckout true [22:03:52] [Update checkout directory (/usr/local/teamcity/buildAgent/work/db80d9c7294729d5)] /usr/bin/git show-ref [22:03:52] [Update checkout directory (/usr/local/teamcity/buildAgent/work/db80d9c7294729d5)] /usr/bin/git show-ref refs/remotes/origin/master [22:03:52] [Update checkout directory (/usr/local/teamcity/buildAgent/work/db80d9c7294729d5)] Commit '0d41a12c788798152c7da9327ef63b759f7d5b4c' is not found in local clone. Running 'git fetch'... [22:03:52] [Update checkout directory (/usr/local/teamcity/buildAgent/work/db80d9c7294729d5)] /usr/bin/git fetch --progress origin +refs/heads/master:refs/remotes/origin/master [22:03:52] [Updating sources] Failed to perform checkout on agent: '/usr/bin/git fetch --progress origin +refs/heads/master:refs/remotes/origin/master' command failed. exit code: 128 stderr: Host key verification failed. fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. [22:03:52] Publishing internal artifacts [22:03:52] [Publishing internal artifacts] Publishing 1 file using [ArtifactsCachePublisher] [22:03:52] [Publishing internal artifacts] Publishing 1 file using [WebPublisher] [22:03:52] Build failed to start. Artifacts will not be published for this build [22:03:52] Build finished
感谢您的帮助!
答案 0 :(得分:0)
这是因为TeamCity代理计算机上的已知主机数据库不包含Gitlab服务器的指纹。你可以通过ssh运行一些命令来添加它,例如git ls-remote <your repository url>
,并同意在指纹正确的情况下添加指纹。
实际上,TeamCity检出已禁用已知主机数据库检查的代码。请检查TeamCity代理计算机上的.ssh/config
中是否有与Gitlab相关的任何内容。