Commit 413d098ae73b365194a82e18035bdbd8a02d94e1
Exists in
master
and in
89 other branches
Merge branch 'gitlab_private_token' into 'master'
Gitlab private token Create admin user in colab and gitlab to get the private token to import data from gitlab to the colab. See merge request !27
Showing
4 changed files
with
58 additions
and
1 deletions
Show diff stats
cookbooks/colab/recipes/default.rb
... | ... | @@ -53,11 +53,54 @@ template '/etc/colab/settings.d/00-database.yaml' do |
53 | 53 | notifies :restart, 'service[colab]' |
54 | 54 | end |
55 | 55 | |
56 | +template '/tmp/admin-gitlab.json' do | |
57 | + | |
58 | + password = SecureRandom.random_number.to_s | |
59 | + | |
60 | + variables( | |
61 | + :password => password | |
62 | + ) | |
63 | +end | |
64 | + | |
65 | +execute 'create-admin-token-colab' do | |
66 | + command "colab-admin loaddata admin-gitlab.json" | |
67 | + | |
68 | + cwd '/tmp' | |
69 | + user 'root' | |
70 | +end | |
71 | + | |
72 | +execute 'create-admin-token-gitlab' do | |
73 | + user = "admin-gitlab" | |
74 | + email = "admin-gitlab@example.com" | |
75 | + password = SecureRandom.random_number.to_s | |
76 | + | |
77 | + command "RAILS_ENV=production bundle exec rails runner \"User.create(name: \'#{user}\', username: \'#{user}\', email: \'#{email}\', password: \'#{password}\', admin: \'true\')\"" | |
78 | + | |
79 | + user_exist = Dir.chdir '/usr/lib/gitlab' do | |
80 | + `RAILS_ENV=production bundle exec rails runner \"puts User.find_by_email(\'admin-gitlab@example.com\').nil?\"`.strip | |
81 | + end | |
82 | + | |
83 | + not_if {user_exist == "false"} | |
84 | + | |
85 | + cwd '/usr/lib/gitlab' | |
86 | + user 'git' | |
87 | +end | |
88 | + | |
56 | 89 | template '/etc/colab/settings.d/01-apps.yaml' do |
57 | 90 | owner 'root' |
58 | 91 | group 'colab' |
59 | 92 | mode 0640 |
60 | 93 | notifies :restart, 'service[colab]' |
94 | + | |
95 | + get_private_token = lambda do | |
96 | + Dir.chdir '/usr/lib/gitlab' do | |
97 | + `sudo -u git RAILS_ENV=production bundle exec rails runner \"puts User.find_by_email(\'admin-gitlab@example.com\').private_token\"`.strip | |
98 | + end | |
99 | + end | |
100 | + | |
101 | + variables( | |
102 | + :get_private_token => get_private_token | |
103 | + ) | |
61 | 104 | end |
62 | 105 | |
63 | 106 | template '/etc/colab/settings.d/02-logging.yaml' do | ... | ... |
cookbooks/colab/templates/01-apps.yaml.erb
... | ... | @@ -0,0 +1,13 @@ |
1 | +[ | |
2 | + { | |
3 | + "model": "accounts.user", | |
4 | + "fields": { | |
5 | + "username": "admin-gitlab", | |
6 | + "first_name": "Admin", | |
7 | + "last_name": "Gitlab", | |
8 | + "email": "admin-gitlab@admin.com", | |
9 | + "password": "<%= @password %>", | |
10 | + "modified": "2015-06-11 14:22:00.332432+00" | |
11 | + } | |
12 | + } | |
13 | +] | |
0 | 14 | \ No newline at end of file | ... | ... |
roles/integration_server.rb