summaryrefslogtreecommitdiff
path: root/app/services/projects/create_service.rb
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-03-12 17:14:48 +0200
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-03-12 17:14:48 +0200
commit7f50c7f62c083ef5599b2ffe24723683c246bfb0 (patch)
treed86db3be7f7e32d2a00c5297bb84be7455b51682 /app/services/projects/create_service.rb
parente603da7360dd8141a00b8096cb67acda0e039940 (diff)
downloadgitlab-ce-7f50c7f62c083ef5599b2ffe24723683c246bfb0.tar.gz
Move project creation to service
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'app/services/projects/create_service.rb')
-rw-r--r--app/services/projects/create_service.rb23
1 files changed, 23 insertions, 0 deletions
diff --git a/app/services/projects/create_service.rb b/app/services/projects/create_service.rb
index ba131d8ffbe..b3f97a7c9c1 100644
--- a/app/services/projects/create_service.rb
+++ b/app/services/projects/create_service.rb
@@ -58,6 +58,29 @@ module Projects
user: current_user
)
end
+
+ @project.update_column(:last_activity_at, @project.created_at)
+
+ if @project.import?
+ RepositoryImportWorker.perform_in(5.seconds, @project.id)
+ else
+ GitlabShellWorker.perform_async(
+ :add_repository,
+ @project.path_with_namespace
+ )
+
+ end
+
+ if @project.wiki_enabled?
+ begin
+ # force the creation of a wiki,
+ GollumWiki.new(@project, @project.owner).wiki
+ rescue GollumWiki::CouldNotCreateWikiError => ex
+ # Prevent project observer crash
+ # if failed to create wiki
+ nil
+ end
+ end
end
@project