diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-02-11 23:00:12 +0200 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-02-11 23:00:12 +0200 |
commit | 8bf8c70c4bdd14502c6f3ae314207b99aa2c9f49 (patch) | |
tree | 351d5a918750d438566390628f8f6923433d940d /app/contexts | |
parent | ab0cfc00367a60cfe9cc488521bf55882d54769a (diff) | |
download | gitlab-ce-8bf8c70c4bdd14502c6f3ae314207b99aa2c9f49.tar.gz |
Import repo feature
Diffstat (limited to 'app/contexts')
-rw-r--r-- | app/contexts/projects/create_context.rb | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/app/contexts/projects/create_context.rb b/app/contexts/projects/create_context.rb index 915bd8be8b0..8e1da539a6c 100644 --- a/app/contexts/projects/create_context.rb +++ b/app/contexts/projects/create_context.rb @@ -34,13 +34,23 @@ module Projects @project.creator = current_user + # Import project from cloneable resource + if @project.valid? && @project.import_url.present? + shell = Gitlab::Shell.new + if shell.import_repository(@project.path_with_namespace, @project.import_url) + true + else + @project.errors.add(:import_url, 'cannot clone repo') + end + end + if @project.save @project.users_projects.create(project_access: UsersProject::MASTER, user: current_user) end @project - rescue => ex - @project.errors.add(:base, "Can't save project. Please try again later") + #rescue => ex + #@project.errors.add(:base, "Can't save project. Please try again later") @project end |