如何将 Jira 与 GitLab CE 集成?

Posted

技术标签:

【中文标题】如何将 Jira 与 GitLab CE 集成?【英文标题】:How to integrate Jira with GitLab CE? 【发布时间】:2015-08-07 11:58:48 【问题描述】:

我们需要自托管 GitLab CE 和 Jira

将 git commit 与 jira 问题联系起来 将 git commit 与 jira 问题状态相关联,就像我们可以通过 git 问题启动/移动/关闭问题一样 限制特定分支上的上述操作,例如,仅在主分支上提交时更改问题状态,因为我们对每个单个功能/错误执行合并请求

但只有 GitLab EE 内置支持 Jira 集成,我如何为 GitLab CE 做到这一点?

我正在使用 GitLab CE 7.8.2、Jira+Agile 6.4

【问题讨论】:

我很好奇你在这方面走了多远/你最终做了什么来解决这个问题,如果你这样做了。 【参考方案1】:

我认为现在有更好的方法:

https://docs.gitlab.com/ce/user/project/integrations/jira.html

GitLab 可以配置为与 JIRA 交互。通过用户名和密码进行配置。无法通过 CAS 连接到 JIRA 服务器。

每个项目都可以配置为连接到不同的 JIRA 实例,请参阅配置部分。如果您有一个 JIRA 实例,您可以使用默认模板预先填写设置页面。要配置模板,请参阅服务模板文档。

项目连接到 JIRA 后,您可以直接从 GitLab 引用和关闭 JIRA 中的问题。

【讨论】:

嗨,这个集成插件是付费的还是免费的? 这是免费的,不使用额外的插件。【参考方案2】:

你可以看看这个项目:https://github.com/akraxx/gitlab-jira-integration。这是一个 Java 应用程序,因此您需要一个带有 JVM 的服务器来运行它。

按照自述文件了解如何配置它:)

【讨论】:

你是作者吗?看起来很棒,我会尝试并提供反馈。顺便说一句,很高兴看到一个活跃的 jira-gitlab 集成项目 是的,我是 :) 如果您在配置或启动它时遇到问题,请告诉我!【参考方案3】:

请注意,使用GitLab 13.3(2020 年 8 月),您不必再为每个项目设置第三方集成。

您可以在您的托管 Gitlab 实例级别(免费版)执行此操作。

外部服务的实例级项目集成管理

自我管理 GitLab 的管理员现在可以通过单个界面将第三方服务与实例上的所有项目集成。

以前,必须为每个项目配置集成,这意味着如果一个实例有数千个项目,则必须手动配置数千个单独的配置。这不仅费时,而且容易出错、难以更新,并且难以将集成作为策略强制执行。

通过跨所有项目配置集成,管理员可以为自己和项目所有者节省大量时间和精力。

这是此功能的第一次迭代。在即将发布的版本中,我们会将此功能扩展到组级别,添加更多配置和合规选项等等。

参见Documentation 和Issue。


另外,GitLab 13.4(2020 年 9 月)

GitLab for Jira 和 DVCS 连接器现已在 Core 中

对于 Jira GitLab 的用户,GitLab for Jira app 和 DVCS Connector 允许您显示有关 GitLab 的信息 直接在 Jira 中提交和合并请求。 结合我们的原生 与 Jira 集成,您可以轻松地在 工作时有两个应用程序。

这些功能以前仅在我们的高级计划中可用,但 现在可供所有用户使用!

请参阅 Documentation 和 Issue。


见GitLab 13.6(2020 年 11 月)

项目集成的集团级管理

在 GitLab 13.3 中,我们添加了enable an integration across an entire instance 的功能。 在 GitLab 13.6 中,该功能正在扩展,以允许在组级别管理集成!

群组所有者现在可以向群组添加集成,该集成将被该群组下的所有项目继承

这有可能节省大量时间,因为许多组织都希望将特定的集成应用到他们创建的每个项目中。

使用我们的Jira integration 就是一个很好的例子。如果您使用的是 Jira,它几乎总是遍布整个公司。其中一些公司拥有数千个项目,因此必须单独配置每一个集成。

通过项目集成的组级管理,您可以在每个父组中添加集成,从而将所需的配置量减少几个数量级!

在our announcement on the GitLab blog阅读更多内容。

参见Documentation 和Epic。


GitLab 13.10(2021 年 3 月):

在 GitLab 中查看 Jira 问题详情

我们 Jira 问题列表功能的用户现在可以直接在 GitLab 内查看问题的详细信息!此 MVC 使开发人员能够查看问题的详细信息、标签和 cmets,使他们能够在处理 Jira 问题时留在 GitLab。

我们的目标是让开发人员能够在一天中的大部分时间留在 GitLab 中,这样您就可以少去一次 Jira 之旅了。

在 GitLab 13.10 中,如果您 enable a feature flag,则可以使用此功能。此功能将在 GitLab 13.11 中为 enabled by default。

请参阅 Documentation 和 Epic。

【讨论】:

谢谢!我正要一个一个地做 14 个项目 :-)【参考方案4】:

目前我认为GitLab Listener add-on for JIRA 是集成 GitLab CE 和 JIRA 的唯一方法。您可以使用提交消息来生成 JIRA 工作日志、cmets 和活动,以及执行工作流转换。该插件还尝试将 GitLab 用户映射到 JIRA 用户,以便将工作日志、cmets 等链接到正确的用户。

这是一个简单的插件,可能无法满足您的所有要求,但总比没有好:)。

【讨论】:

这个插件不能限制特定分支的操作​​,我试过了

以上是关于如何将 Jira 与 GitLab CE 集成?的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins - JIRA - GitLab 集成技巧(流程自动化概念)

gitlab集成AD域

如何将 Sonar Quality Gates 与 Gitlab-CI 集成

jira是怎么与jenkins集成的

Jenkins+GitLab+Sonarqube+Shell持续集成CI/CD

如何将 Kubernetes 与 Gitlab 集成