summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-11-23 06:34:09 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-11-23 06:34:09 +0300
commit5ca1772385d6f67a16a12f134c707b471b23cbe8 (patch)
tree8a968a1011de539891a8b0de7b387a26f7bc1426
parent26622f4c8f96910b0f14e73bdebfb8198c693912 (diff)
downloadgitlab-ce-5ca1772385d6f67a16a12f134c707b471b23cbe8.tar.gz
Init username migration and rake task for create appropriate namespace
-rw-r--r--db/migrate/20121123104937_add_username_to_user.rb5
-rw-r--r--lib/tasks/gitlab/activate_namespaces.rake13
2 files changed, 18 insertions, 0 deletions
diff --git a/db/migrate/20121123104937_add_username_to_user.rb b/db/migrate/20121123104937_add_username_to_user.rb
new file mode 100644
index 00000000000..04232a119d9
--- /dev/null
+++ b/db/migrate/20121123104937_add_username_to_user.rb
@@ -0,0 +1,5 @@
+class AddUsernameToUser < ActiveRecord::Migration
+ def change
+ add_column :users, :username, :string, null: true
+ end
+end
diff --git a/lib/tasks/gitlab/activate_namespaces.rake b/lib/tasks/gitlab/activate_namespaces.rake
new file mode 100644
index 00000000000..0c7c3e7160e
--- /dev/null
+++ b/lib/tasks/gitlab/activate_namespaces.rake
@@ -0,0 +1,13 @@
+namespace :gitlab do
+ desc "GITLAB | Enable usernames and namespaces for user projects"
+ task activate_namespaces: :environment do
+ User.find_each(batch_size: 500) do |user|
+ User.transaction do
+ username = user.email.match(/^[^@]*/)[0]
+ user.update_attributes!(username: username)
+ user.create_namespace!(code: username, name: user.name)
+ print '.'.green
+ end
+ end
+ end
+end