Commit 9426b7505102cba51b5e87f71fec83f545d0e95f

Authored by Antonio Terceiro
1 parent a9dc3816

noosfero: create a user to use for API access

Signed-off-by: Antonio Terceiro <terceiro@softwarelivre.org>
Signed-off-by: Thiago Ribeiro <thiagitosouza@gmail.com>
Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com>
Signed-off-by: Luciano Prestes Cavalcanti <lucianopcbr@gmail.com>
cookbooks/noosfero/files/noosfero-create-api-user 0 → 100644
@@ -0,0 +1,17 @@ @@ -0,0 +1,17 @@
  1 +#!/usr/bin/env ruby
  2 +
  3 +login = ARGV[0]
  4 +email = ARGV[1]
  5 +password = SecureRandom.random_number.to_s
  6 +
  7 +user = User.find_by_login(login)
  8 +exit(0) if user
  9 +
  10 +user = User.create!(
  11 + login: login,
  12 + email: email,
  13 + password: password,
  14 + password_confirmation: password
  15 +)
  16 +user.activate
  17 +user.generate_private_token_if_not_exist
cookbooks/noosfero/recipes/default.rb
@@ -134,6 +134,21 @@ cookbook_file &#39;/usr/lib/noosfero/config/noosfero.yml&#39; do @@ -134,6 +134,21 @@ cookbook_file &#39;/usr/lib/noosfero/config/noosfero.yml&#39; do
134 source 'noosfero.yml' 134 source 'noosfero.yml'
135 notifies :restart, 'service[noosfero]' 135 notifies :restart, 'service[noosfero]'
136 end 136 end
  137 +
  138 +cookbook_file "/usr/local/bin/noosfero-create-api-user" do
  139 + mode 0755
  140 +end
  141 +
  142 +execute 'create-admin-token-noosfero' do
  143 + command [
  144 + "RAILS_ENV=production bundle exec rails runner",
  145 + "/usr/local/bin/noosfero-create-api-user",
  146 + "admin-noosfero", # username
  147 + "noosfero@localhost.localdomain", # email
  148 + ].join(' ')
  149 + cwd '/usr/lib/noosfero'
  150 + user 'noosfero'
  151 +end
137 ############################################### 152 ###############################################
138 # SELinux: permission to access static files noosfero 153 # SELinux: permission to access static files noosfero
139 ################################################ 154 ################################################