Skip to content

Slack Application only available at project level

What does this MR do?

Slack Application integration is only available on GitLab.com and in the development environment. https://docs.gitlab.com/ee/user/project/integrations/gitlab_slack_application.html

After adding group-level integrations &2543, we have to change this integration to only appear at the project level. At the group-level, we have an error:

ActionView::Template::Error - No route matches {:action=>"slack_auth", :controller=>"projects/settings/slacks", :group_id=>"group/subgroup", :id=>"gitlab_slack_application", :namespace_id=>nil, :project_id=>nil}, possible unmatched constraints: [:namespace_id, :project_id]:
  ee/app/views/projects/services/gitlab_slack_application/_slack_button.html.haml:1:in `view template'
  config/application.rb:363:in `block (4 levels) in <class:Application>'
  ee/app/helpers/ee/services_helper.rb:31:in `add_to_slack_link'
  ee/app/views/projects/services/gitlab_slack_application/_slack_button.html.haml:1
  ee/app/views/projects/services/gitlab_slack_application/_slack_integration_form.html.haml:30
  ee/app/views/projects/services/gitlab_slack_application/_help.html.haml:13
  app/views/shared/_service_settings.html.haml:4
  app/views/shared/integrations/_form.html.haml:10
  app/views/shared/integrations/_form.html.haml:9
  app/views/shared/integrations/edit.html.haml:6
  app/controllers/application_controller.rb:134:in `render'
  app/controllers/concerns/integrations_actions.rb:14:in `edit'
  app/controllers/groups/settings/integrations_controller.rb:19:in `edit'

Note: group-level integrations are under a feature flag group_level_integrations, so there is no impact on the users. No changelog entry is needed.

This is because the implementation is coupled to projects and in terms of functionally it also makes sense since:

  • At the instance-level on GitLab.com we are not going to configure it.
  • At the group-level we don't have to configure it either and propagate the values, it is already a one-click installation and we don't have to propagate any values to the projects.

Related to #13961 (comment 426394530).

Edited by Arturo Herrero

Merge request reports