2015-03-19 59 views

回答

2

唯一的原生功能,接近是lib/tasks/gitlab/bulk_add_permission.rake,這是中提到的「User management

# omnibus-gitlab 
sudo gitlab-rake gitlab:import:all_users_to_all_groups 

# installation from source 
bundle exec rake gitlab:import:all_users_to_all_groups RAILS_ENV=production 

你可以把它看作一個模型來開發我們自己的任務。

0

我不知道這樣的功能。但是你可以用API編寫腳本。我們在這裏使用它來將所有用戶添加到一個組中(所有用戶到所有組都不適合我們的情況)。

幫助文檔:http://doc.gitlab.com/ce/api/README.htmlhttp://doc.gitlab.com/ce/api/users.htmlhttp://doc.gitlab.com/ce/api/groups.html

還有另一個問題可能是有益的,名單也不同模塊各種編程語言的一個迴應:Is there a way to add users automatically into gitlab?

0

我一直在尋找一個解決方案將所有Gitlab用戶分配給一個特定的組。

這裏的解決方案:

創建這個文件:

/opt/gitlab/embedded/service/gitlab-rails/lib/tasks/gitlab/finder_import.rake

有了這個內容:

namespace :gitlab do namespace :finder do 

desc "GitLab | Add all users to group Colaboradores (admin users are added as owners)" 
task importall: :environment do |t, args| 
    user_ids = User.where(admin: false).pluck(:id) 
    admin_ids = User.where(admin: true).pluck(:id) 
    groups = Group.where(name: "Colaboradores") 

    puts "Importing #{user_ids.size} users into #{groups.size} groups" 
    puts "Importing #{admin_ids.size} admins into #{groups.size} groups" 
    groups.each do |group| 
    puts "Importing into #{group.name}" 
    group.add_users(user_ids, GroupMember::DEVELOPER) 
    group.add_users(admin_ids, GroupMember::OWNER) 
    end 
end 

月底結束

運行以下命令:

gitlab耙gitlab:取景器:importall

相關問題