diff options
author | Douwe Maan <douwe@selenight.nl> | 2017-11-15 18:46:08 +0300 |
---|---|---|
committer | Douwe Maan <douwe@selenight.nl> | 2017-11-23 18:59:50 +0300 |
commit | 0e6beaf50c9233ca03083691856dea2883f71773 (patch) | |
tree | 44e8f6d85ab86f747cf5ec88c42a85782fb33a8e /app/services | |
parent | 7084c096732dcd041fbdcd22ba17233941683c04 (diff) |
Clean up repository fetch and mirror methods
Diffstat (limited to 'app/services')
-rw-r--r-- | app/services/projects/import_service.rb | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/app/services/projects/import_service.rb b/app/services/projects/import_service.rb index c3b11341b4d..26248eb8030 100644 --- a/app/services/projects/import_service.rb +++ b/app/services/projects/import_service.rb @@ -51,10 +51,13 @@ module Projects def import_repository begin - if project.gitea_import? - fetch_repository + fetch_refs = importer_class.try(:fetch_refs) if has_importer? + + if fetch_refs + project.ensure_repository + project.repository.fetch_as_mirror(project.import_url, fetch_refs: fetch_refs) else - clone_repository + gitlab_shell.import_repository(project.repository_storage_path, project.disk_path, project.import_url) end rescue Gitlab::Shell::Error, Gitlab::Git::RepositoryMirroring::RemoteError => e # Expire cache to prevent scenarios such as: @@ -66,17 +69,6 @@ module Projects end end - def clone_repository - gitlab_shell.import_repository(project.repository_storage_path, project.disk_path, project.import_url) - end - - def fetch_repository - project.ensure_repository - project.repository.add_remote(project.import_type, project.import_url) - project.repository.set_remote_as_mirror(project.import_type) - project.repository.fetch_remote(project.import_type, forced: true) - end - def import_data return unless has_importer? |