summaryrefslogtreecommitdiff
path: root/app/services/archive_repository_service.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/services/archive_repository_service.rb')
-rw-r--r--app/services/archive_repository_service.rb6
1 files changed, 4 insertions, 2 deletions
diff --git a/app/services/archive_repository_service.rb b/app/services/archive_repository_service.rb
index 40b0a64fb73..e1b41527d8d 100644
--- a/app/services/archive_repository_service.rb
+++ b/app/services/archive_repository_service.rb
@@ -6,7 +6,7 @@ class ArchiveRepositoryService
@project, @ref, @format = project, ref, format.downcase
end
- def execute
+ def execute(options = {})
project.repository.clean_old_archives
raise "No archive file path" unless file_path
@@ -17,7 +17,7 @@ class ArchiveRepositoryService
RepositoryArchiveWorker.perform_async(project.id, ref, format)
end
- archived = wait_until_archived
+ archived = wait_until_archived(options[:timeout] || 5.0)
file_path if archived
end
@@ -45,6 +45,8 @@ class ArchiveRepositoryService
end
def wait_until_archived(timeout = 5.0)
+ return archived? if timeout == 0.0
+
t1 = Time.now
begin