2017-05-09 34 views
1

Gerrit Code Reviewでグループを削除することはできますか?いくつかのプラグインがあるかもしれませんが、このアクションはSQLのような方法で '手動で'実行する必要があります(gerrit gsqlなど)?Gerrit Code Reviewでグループを削除するには?

答えて

3

残念ながら、command line toolsまたはREST APIを使用してGerritグループを削除する方法はありません。

GerritデータベースからGerritグループを削除するスクリプトがあります。

それは基本的に以下のん:

1)グループがヘリットに存在するかどうかを確認します。

ssh -p 29418 [email protected] gerrit ls-projects --type ALL --has-acl-for GROUP > /tmp/ls-projects 

if [[ -s /tmp/ls-projects ]] 
then 
    # GROUP HAS ACCESS RIGHTS ASSIGNED 
else 
    # GROUP DOESN'T HAVE ACCESS RIGHTS ASSIGNED 
fi 

if ssh -p 29418 [email protected] gerrit ls-groups -q GROUP > /dev/null 
then 
    # GROUP EXIST 
else 
    # GROUP DOESN'T EXIST 
fi 

2)グループは、任意のプロジェクトに割り当てられたアクセス権を持っているかどうかをチェック

注:プロジェクトのアクセス権からグループを削除する必要があります。

3)ゲリットデータベースからグループを削除)ゲリットデータベース

SELECT group_id FROM account_group_names WHERE name = 'GROUP'; 

4のグループIDを検索

START TRANSACTION; 
DELETE FROM account_group_id   WHERE s  = 'GROUP-ID'; 
DELETE FROM account_group_by_id   WHERE group_id = 'GROUP-ID'; 
DELETE FROM account_group_by_id_aud  WHERE group_id = 'GROUP-ID'; 
DELETE FROM account_group_members  WHERE group_id = 'GROUP-ID'; 
DELETE FROM account_group_names   WHERE group_id = 'GROUP-ID'; 
DELETE FROM account_groups    WHERE group_id = 'GROUP-ID'; 
DELETE FROM account_group_members_audit WHERE group_id = 'GROUP-ID'; 
COMMIT; 
関連する問題