是否可以通过任何方式设置Slack频道,例如键入#361
链接发出预定回购的361或更一般地使用GitLab's special references?
答案 0 :(得分:1)
有一个GitLab Slack应用程序:
https://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html
功能有限,但您可以链接到您的问题。
其帮助命令的输出:
Available commands
- /gitlab [project name or alias] issue show <id>
- /gitlab [project name or alias] issue new <title> *`⇧ Shift`*+*`↵ Enter`* <description>
- /gitlab [project name or alias] issue search <your query>
- /gitlab [project name or alias] issue move <issue_id> (to)? <project_path>
- /gitlab [project name or alias] deploy <environment> to <target-environment>
- /gitlab [project name or alias] run <command> <arguments>
链接到问题很有效,您将直接在Slack中看到标题,受让人,里程碑,标签和权重。
答案 1 :(得分:1)
如果您的需求比默认的GitLab集成所提供的需求更为具体,则可以制作自己的Slack应用程序/ Bot。
有几种方法可以完成您要寻找的东西,最典型的解决方案是使用Thomas Kainrad提到的斜杠命令。
如果这不是您想要的,并且有必要在通道链接中键入#395到存储库中的#395,则您的机器人将需要使用Events API中的message event。
请谨慎使用此事件-每当在您的应用程序有权访问的任何渠道中发布消息时,您都会收到Slack的请求。根据您应用程序的范围,其中还可能包含私人消息,因此请考虑可能引起的隐私和日志记录问题。
但是,使用此功能,您可以实现自己的目标。只需使用正则表达式检查每条消息的正确文本,然后您的机器人就可以在事件来源所在的Slack通道中查找和post到存储库的链接。
如果您有多个存储库,并且它们与特定的通道绑定,则可以添加斜杠命令以将该通道与存储库相关联,然后将该信息存储在数据库中。然后,当您收到消息事件时,使用消息来自的通道的ID从数据库中读取。
答案 2 :(得分:1)