Commit 1cf7f36aa176552f3861b7d2439dbfe835a3ee22

Authored by Luciano Prestes
1 parent 1c4bfc4d

Get private token of colab-admin and put on gitlab plugin configuration

Signed-off-by: Gustavo Jaruga  <darksshades@gmail.com>
Signed-off-by: Lucas Moura  <lucas.moura128@gmail.com>
Signed-off-by: Luciano Prestes Cavalcanti <lucianopcbr@gmail.com>
cookbooks/colab/recipes/default.rb
... ... @@ -53,11 +53,40 @@ template &#39;/etc/colab/settings.d/00-database.yaml&#39; do
53 53 notifies :restart, 'service[colab]'
54 54 end
55 55  
  56 +execute 'create token-admin' do
  57 + user = "admin-gitlab"
  58 + email = "admin-gitlab@admin.com"
  59 + password = SecureRandom.random_number.to_s
  60 +
  61 + command "echo \"from colab.accounts.models import User; User.objects.create_superuser(\'#{user}\', \'#{email}\', \'#{password}\')\" | colab-admin shell"
  62 +end
  63 +
  64 +execute 'admin-token' do
  65 + user = "admin-gitlab"
  66 + email = "admin-gitlab@admin.com"
  67 + password = SecureRandom.random_number.to_s
  68 +
  69 + command "sudo -u git RAILS_ENV=production bundle exec rails runner \"User.create(name: \'#{name}\', username: \'#{name}\', email: \'#{email}\', password: \'#{password}\', admin: \'true\')\""
  70 +
  71 + cwd '/usr/lib/gitlab'
  72 + user 'root'
  73 +end
  74 +
56 75 template '/etc/colab/settings.d/01-apps.yaml' do
57 76 owner 'root'
58 77 group 'colab'
59 78 mode 0640
60 79 notifies :restart, 'service[colab]'
  80 +
  81 + get_private_token = lambda do
  82 + Dir.chdir '/usr/lib/gitlab' do
  83 + `sudo -u git RAILS_ENV=production bundle exec rails runner \"puts User.find_by_email(\'admin-gitlab@admin.com\').private_token\"`.strip
  84 + end
  85 + end
  86 +
  87 + variables(
  88 + :get_private_token => get_private_token
  89 + )
61 90 end
62 91  
63 92 template '/etc/colab/settings.d/02-logging.yaml' do
... ... @@ -100,11 +129,3 @@ service &#39;colab&#39; do
100 129 action [:enable, :start]
101 130 supports :restart => true
102 131 end
103   -
104   -execute 'create token-admin' do
105   - user = "admin-gitlab"
106   - email = "admin-gitlab@admin.com"
107   - password = SecureRandom.random_number.to_s
108   -
109   - command "echo \"from colab.accounts.models import User; User.objects.create_superuser(\'#{user}\', \'#{email}\', \'#{password}\')\" | colab-admin shell"
110   -end
... ...
cookbooks/colab/templates/01-apps.yaml.erb
... ... @@ -2,5 +2,6 @@
2 2 PROXIED_APPS:
3 3 gitlab:
4 4 upstream: 'http://<%= node['peers']['integration'] %>:81/gitlab/'
  5 + private_token: '<%= @get_private_token.call %>'
5 6 noosfero:
6 7 upstream: 'http://<%= node['peers']['social'] %>:80/social/'
... ...
cookbooks/gitlab/recipes/default.rb
... ... @@ -95,19 +95,3 @@ execute &#39;selinux-gitlab&#39; do
95 95 command 'selinux-install-module /etc/selinux/local/gitlab.te'
96 96 action :nothing
97 97 end
98   -
99   -execute 'admin-token' do
100   - user = "admin-gitlab"
101   - email = "admin-gitlab@admin.com"
102   - password = SecureRandom.random_number.to_s
103   -
104   - command "bundle exec rails c production << EOF
105   - user = User.create(name: \'#{name}\', username: \'#{name}\', email: \'#{email}\', password: \'#{password}\')
106   - user.admin = true
107   - user.save
108   - exit
109   - EOF"
110   -
111   - cwd '/usr/lib/gitlab'
112   - user 'git'
113   -end
... ...