diff options
Diffstat (limited to 'app/services')
-rw-r--r-- | app/services/git/branch_push_service.rb | 2 | ||||
-rw-r--r-- | app/services/members/create_service.rb | 11 | ||||
-rw-r--r-- | app/services/projects/after_import_service.rb | 2 | ||||
-rw-r--r-- | app/services/projects/lfs_pointers/lfs_download_link_list_service.rb | 12 | ||||
-rw-r--r-- | app/services/projects/repository_languages_service.rb | 2 |
5 files changed, 24 insertions, 5 deletions
diff --git a/app/services/git/branch_push_service.rb b/app/services/git/branch_push_service.rb index da053ce80c7..abf11f253f6 100644 --- a/app/services/git/branch_push_service.rb +++ b/app/services/git/branch_push_service.rb @@ -48,7 +48,7 @@ module Git def enqueue_detect_repository_languages return unless default_branch? - DetectRepositoryLanguagesWorker.perform_async(project.id, current_user.id) + DetectRepositoryLanguagesWorker.perform_async(project.id) end # Only stop environments if the ref is a branch that is being deleted diff --git a/app/services/members/create_service.rb b/app/services/members/create_service.rb index f6bad74736c..d6b17ec10be 100644 --- a/app/services/members/create_service.rb +++ b/app/services/members/create_service.rb @@ -23,7 +23,16 @@ module Members members.each do |member| if member.errors.any? - errors << "#{member.user.username}: #{member.errors.full_messages.to_sentence}" + current_error = + # Invited users may not have an associated user + if member.user.present? + "#{member.user.username}: " + else + "" + end + + current_error += member.errors.full_messages.to_sentence + errors << current_error else after_execute(member: member) end diff --git a/app/services/projects/after_import_service.rb b/app/services/projects/after_import_service.rb index afb9048e87b..bbdde4408d2 100644 --- a/app/services/projects/after_import_service.rb +++ b/app/services/projects/after_import_service.rb @@ -9,7 +9,7 @@ module Projects end def execute - Projects::HousekeepingService.new(@project, :gc).execute do + Projects::HousekeepingService.new(@project).execute do repository.delete_all_refs_except(RESERVED_REF_PREFIXES) end rescue Projects::HousekeepingService::LeaseTaken => e diff --git a/app/services/projects/lfs_pointers/lfs_download_link_list_service.rb b/app/services/projects/lfs_pointers/lfs_download_link_list_service.rb index 05974948505..9b72480d18b 100644 --- a/app/services/projects/lfs_pointers/lfs_download_link_list_service.rb +++ b/app/services/projects/lfs_pointers/lfs_download_link_list_service.rb @@ -37,7 +37,17 @@ module Projects raise DownloadLinksError, response.message unless response.success? - parse_response_links(response['objects']) + # Since the LFS Batch API may return a Content-Ttpe of + # application/vnd.git-lfs+json + # (https://github.com/git-lfs/git-lfs/blob/master/docs/api/batch.md#requests), + # HTTParty does not know this is actually JSON. + data = JSON.parse(response.body) + + raise DownloadLinksError, "LFS Batch API did return any objects" unless data.is_a?(Hash) && data.key?('objects') + + parse_response_links(data['objects']) + rescue JSON::ParserError + raise DownloadLinksError, "LFS Batch API response is not JSON" end def parse_response_links(objects_response) diff --git a/app/services/projects/repository_languages_service.rb b/app/services/projects/repository_languages_service.rb index e75851c7da4..05f43c2264b 100644 --- a/app/services/projects/repository_languages_service.rb +++ b/app/services/projects/repository_languages_service.rb @@ -11,7 +11,7 @@ module Projects def perform_language_detection if persisted_repository_languages.blank? - ::DetectRepositoryLanguagesWorker.perform_async(project.id, current_user.id) + ::DetectRepositoryLanguagesWorker.perform_async(project.id) else project.update_column(:detected_repository_languages, true) end |