- ネームスペースとグループの検証エラー
- SQL クエリを使ったグループの検索
- Railsコンソールを使ってサブグループを別の場所に転送
- Railsコンソールを使った削除待ちグループの検索
- Railsコンソールを使ったグループの削除
- グループまたはプロジェクトに対するユーザーの最大権限の検索
- バッジを持つ請求可能メンバーを削除できません
Project Invite/Group Invite
トラブルシューティングのグループ
ネームスペースとグループの検証エラー
GitLab 14.4以降では、名前空間やグループを作成・更新する際に以下のチェックを行います:
- 名前空間に親が存在しないこと。
- グループの親は、名前空間ではなくグループでなければなりません。
万が一、GitLabのインストールでこれらのエラーが表示された場合は、この検証を改善するためにサポートまでご連絡ください。
SQL クエリを使ったグループの検索
rails コンソールで SQL クエリに基づいてグループの配列を検索して保存します:
# Finds groups and subgroups that end with '%oup'
Group.find_by_sql("SELECT * FROM namespaces WHERE name LIKE '%oup'")
=> [#<Group id:3 @test-group>, #<Group id:4 @template-group/template-subgroup>]
Railsコンソールを使ってサブグループを別の場所に転送
グループの転送がUIやAPIでうまくいかない場合は、Railsコンソールセッションで転送を試みるとよいでしょう:
user = User.find_by_username('<username>')
group = Group.find_by_name("<group_name>")
## Set parent_group = nil to make the subgroup a top-level group
parent_group = Group.find_by(id: "<group_id>")
service = ::Groups::TransferService.new(group, user)
service.execute(parent_group)
Railsコンソールを使った削除待ちグループの検索
削除を保留しているグループをすべて見つける必要がある場合は、Railsコンソールセッションで次のコマンドを使用できます:
Group.all.each do |g|
if g.marked_for_deletion?
puts "Group ID: #{g.id}"
puts "Group name: #{g.name}"
puts "Group path: #{g.full_path}"
end
end
Railsコンソールを使ったグループの削除
グループの削除が行き詰まることがあります。必要に応じて、Railsコンソールセッションで以下のコマンドを使ってグループの削除を試みることができます:
GroupDestroyWorker.new.perform(group_id, user_id)
グループまたはプロジェクトに対するユーザーの最大権限の検索
管理者は、グループまたはプロジェクトのユーザーの最大権限を検索できます。
- Railsコンソールセッションを開始します。
-
以下のコマンドを実行してください:
user = User.find_by_username 'username' project = Project.find_by_full_path 'group/project' user.max_member_access_for_project project.id
user = User.find_by_username 'username' group = Group.find_by_full_path 'group' user.max_member_access_for_group group.id
バッジを持つ請求可能メンバーを削除できませんProject Invite/Group Invite
Members who were invited via a group invitation cannot be removed. You can either remove the entire group, or ask an Owner of the invited group to remove the member.
このエラーは通常、削除しようとしているユーザーが、1つ以上のプロジェクトまたはグループで共有されている外部グループの一部である場合に発生します。ユーザーを請求可能メンバーとして削除するには、いずれかのオプションに従ってください:
- プロジェクトまたはグループのメンバーページから招待されたグループのメンバーを削除します。
- 推奨。グループにアクセスできる場合は、招待されたグループからユーザーを直接削除します。
billable_membersエンドポイントを更新して招待グループを含めるという機能要求は現在作業中です。詳細については、イシュー386583を参照してください。