对于我的公司,我创建了一个基于一堆 Powershell 脚本和一个 ASP.net Web 界面的软件构建系统。
该构建系统每晚由计划任务运行,但也可以通过 Web 界面运行。源代码目前由我们的 CVS 服务器托管,一切正常。
现在,我们正在努力将我们的源代码移至外部 GIT 托管服务。我对 Powershell 脚本和 Web 界面进行了一些更改,目标是这个 SCM 开关不能改变人们使用构建系统的方式。我创建了没有密码的 SSH 密钥,建议使用自动脚本运行。
它几乎可以工作,这就是问题所在。如果我手动运行我的构建脚本,或者通过隔夜的预定任务,没有问题。但是如果我通过网络界面运行它,它就不起作用。
我检查了两次 ASP.net Web 服务器是否运行良好,可以模拟使用所需的用户帐户。但没办法,脚本在永不结束的 GIT 进程上保持阻塞。我认为那里存在一些安全或身份验证问题,但我总是无法捕获 GIT 输出。
存储库文件夹创建良好,并且有一个“.git”文件夹,但仅此而已。我捕获的唯一输出是“克隆……”。
我尝试运行一些 posh-git 实用程序来启动 ssh 服务器,但没有成功,这并不能解决问题。
任何帮助将不胜感激。谢谢。
更新:我已经能够捕捉到一些痕迹,它们是:
- 克隆到“metamodels.fake”...
- 致命:无法从远程存储库中读取。请确保您具有正确的访问权限并且存储库存在。