]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/dev/templates/default/rails.setup.rb.erb
Fix user creation for new dev sites
[chef.git] / cookbooks / dev / templates / default / rails.setup.rb.erb
index e2df25012bad810a7afddc3f1f66ad3f074f43b7..afdb0a44afea669372d395a50c2b6846a73b98b4 100644 (file)
@@ -1,14 +1,14 @@
 OpenStreetMap::Application.config.after_initialize do
 OpenStreetMap::Application.config.after_initialize do
-  if ActiveRecord::Base.connection.table_exists?(:client_applications)
-    unless webmaster = User.find_by_email("webmaster@openstreetmap.org")
-      webmaster = User.new
-      webmaster.display_name = "OpenStreetMap Webmaster"
-      webmaster.email = "webmaster@openstreetmap.org"
-      webmaster.pass_crypt = SecureRandom.hex
-      webmaster.status = "active"
-      webmaster.save!
-    end
+  unless webmaster = User.find_by_email("webmaster@openstreetmap.org")
+    webmaster = User.new
+    webmaster.display_name = "OpenStreetMap Webmaster"
+    webmaster.email = "webmaster@openstreetmap.org"
+    webmaster.pass_crypt = SecureRandom.hex
+    webmaster.activate
+    webmaster.save!
+  end
 
 
+  if ActiveRecord::Base.connection.table_exists?(:client_applications)
     unless id = webmaster.client_applications.find_by_name("iD")
       id = webmaster.client_applications.new
       id.name = "iD"
     unless id = webmaster.client_applications.find_by_name("iD")
       id = webmaster.client_applications.new
       id.name = "iD"
@@ -53,6 +53,21 @@ OpenStreetMap::Application.config.after_initialize do
   end
 
   if ActiveRecord::Base.connection.table_exists?(:oauth_applications)
   end
 
   if ActiveRecord::Base.connection.table_exists?(:oauth_applications)
+    unless id = webmaster.oauth2_applications.find_by_name("iD")
+      id = webmaster.oauth2_applications.new
+      id.name = "iD"
+      id.redirect_uri = "https://<%= @site %>/id"
+      id.scopes = Oauth.scopes.map(&:name)
+      id.confidential = true
+      id.save!
+    end
+
+    if Kernel.const_defined?("Settings")
+      Settings.id_application = id.uid
+    else
+      ID_APPLICATION = id.uid
+    end
+
     unless website = webmaster.oauth2_applications.find_by_name("Web Site")
       website = webmaster.oauth2_applications.new
       website.name = "Web Site"
     unless website = webmaster.oauth2_applications.find_by_name("Web Site")
       website = webmaster.oauth2_applications.new
       website.name = "Web Site"