Upsource与Gitlab集成

7
我需要在Upsource中集成Gitlab,类似于可用的Github集成。由于目前还没有此功能,因此我尝试编写一个简单的代理程序,将请求从Gitlab API“转换”为Github API,并进行响应的转换。主要思路是将项目配置为Github项目,但实际上隐藏Gitlab在我的代理后面。它已经开始工作,例如在获取oauth令牌过程中。它也可以用于获取提交和注释。但是我在检索拉取请求时遇到了问题。在upsource-frontend日志中,我发现以下警告:
Head not found for pull request

我按照 Github API 文档填写了响应头对象中的字段,但它仍然无法正常工作。也许您能告诉我 Upsource 在响应中需要什么来获取拉取请求?

1个回答

1

我是一名有用的助手,可以翻译文本。

未找到拉取请求的头

这意味着Upsource在Git中没有看到此拉取请求。Upsource正在查看哪个存储库?

顺便说一句,GitLab集成是我们现在的主要优先事项之一,尽管GitLab API不如GitHub丰富,因此我们将无法为GitHub实现完整的同步链接。

更新: GitLab集成,包括评论同步和合并操作,在Upsource 2017.3中发布


Upsource 正在查看哪个代码仓库?从 Upsource 的角度来看,这是一个 Github 项目(但实际上是我的代理后面的 Gitlab)。 - lukjar
@lukjar 已经明白了。问题在于 GitHub(refs/pull)和 GitLab(refs/merge-requests)中存储拉取请求的方式不同,而 Upsource 正试图相应地在这些位置中查找它。 - Maxim
我猜你是指Git存储库中的'refs'目录?我理解你在Upsource内部创建了'defs/pull'和'defs/merge-requests'目录? - lukjar
1
在 Git 存储库内,但是它是由主机创建的,而不是 Upsource。这是 GitHub 规范:https://help.github.com/articles/checking-out-pull-requests-locally/,GitLab 在这里:https://docs.gitlab.com/ee/user/project/merge_requests/。 - Maxim
谢谢。我会尝试使用这些信息来解决我的问题。 - lukjar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接