summaryrefslogtreecommitdiff
path: root/app/models/chat_team.rb
blob: 6e39d7e2204b3f2736aad53e01c90f84ff35ebed (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# frozen_string_literal: true

class ChatTeam < ApplicationRecord
  validates :team_id, presence: true
  validates :namespace, uniqueness: true

  belongs_to :namespace

  def remove_mattermost_team(current_user)
    Mattermost::Team.new(current_user).destroy(team_id: team_id)
  rescue Mattermost::ClientError => e
    # Either the group is not found, or the user doesn't have the proper
    # access on the mattermost instance. In the first case, we're done either way
    # in the latter case, we can't recover by retrying, so we just log what happened
    Gitlab::AppLogger.error("Mattermost team deletion failed: #{e}")
  end
end