summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDouwe Maan <douwe@gitlab.com>2015-12-08 16:13:59 +0000
committerDouwe Maan <douwe@gitlab.com>2015-12-08 16:13:59 +0000
commit033947de90163aeadf0b1ae2c0f5be1b8529088b (patch)
tree82a8d489a6265e90a032d50e76f73dca9b3c7b61 /lib
parenta80f0f66e3c55e9793007bad6162eabba5c8582c (diff)
parent23f383ef69889c9829ad36afa53b5abfbf4b5511 (diff)
downloadgitlab-ce-033947de90163aeadf0b1ae2c0f5be1b8529088b.tar.gz
Merge branch 'sync-all-repos' into 'master'
Sync all repos Scripts and documentation for moving repos, used on gitlab.com. See merge request !1439
Diffstat (limited to 'lib')
-rw-r--r--lib/tasks/gitlab/list_repos.rake17
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/tasks/gitlab/list_repos.rake b/lib/tasks/gitlab/list_repos.rake
new file mode 100644
index 00000000000..c7596e7abcb
--- /dev/null
+++ b/lib/tasks/gitlab/list_repos.rake
@@ -0,0 +1,17 @@
+namespace :gitlab do
+ task list_repos: :environment do
+ scope = Project
+ if ENV['SINCE']
+ date = Time.parse(ENV['SINCE'])
+ warn "Listing repositories with activity or changes since #{date}"
+ project_ids = Project.where('last_activity_at > ? OR updated_at > ?', date, date).pluck(:id).sort
+ namespace_ids = Namespace.where(['updated_at > ?', date]).pluck(:id).sort
+ scope = scope.where('id IN (?) OR namespace_id in (?)', project_ids, namespace_ids)
+ end
+ scope.find_each do |project|
+ base = File.join(Gitlab.config.gitlab_shell.repos_path, project.path_with_namespace)
+ puts base + '.git'
+ puts base + '.wiki.git'
+ end
+ end
+end