diff --git a/app/models/merge_request_diff.rb b/app/models/merge_request_diff.rb index 351a662ae83cbc6c3962528b942056f5efa479c5..e53e2c8fc43bf22870fbb2c1abcaec4b2977746a 100644 --- a/app/models/merge_request_diff.rb +++ b/app/models/merge_request_diff.rb @@ -286,13 +286,11 @@ def opening_external_diff return yield(@external_diff_file) if @external_diff_file external_diff.open do |file| - begin - @external_diff_file = file + @external_diff_file = file - yield(@external_diff_file) - ensure - @external_diff_file = nil - end + yield(@external_diff_file) + ensure + @external_diff_file = nil end end diff --git a/app/models/merge_request_diff_file.rb b/app/models/merge_request_diff_file.rb index e8d936e265cd80bf664b3110e2243a71e32dc7aa..16ec4ed470f1e0f612a030624ae9e51ceaf873a6 100644 --- a/app/models/merge_request_diff_file.rb +++ b/app/models/merge_request_diff_file.rb @@ -23,6 +23,6 @@ def diff super end - binary? ? content.unpack('m0').first : content + binary? ? content.unpack1('m0') : content end end diff --git a/app/models/project.rb b/app/models/project.rb index aba63032cdfba28fc317abc00de7203d732d2568..59b139e59863b8de1890f000e8b6dcd01ab9ac4f 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -1209,11 +1209,9 @@ def url_to_repo def repo_exists? strong_memoize(:repo_exists) do - begin - repository.exists? - rescue - false - end + repository.exists? + rescue + false end end diff --git a/app/models/project_services/jira_service.rb b/app/models/project_services/jira_service.rb index f7064d5aaea572f2b076a97e1d3b567a7637c9b1..81302c516c2ff3ede52e6983c9ee9e8e045c349b 100644 --- a/app/models/project_services/jira_service.rb +++ b/app/models/project_services/jira_service.rb @@ -205,12 +205,10 @@ def can_cross_reference?(noteable) # if any transition fails it will log the error message and stop the transition sequence def transition_issue(issue) jira_issue_transition_id.scan(Gitlab::Regex.jira_transition_id_regex).each do |transition_id| - begin - issue.transitions.build.save!(transition: { id: transition_id }) - rescue => error - log_error("Issue transition failed", error: error.message, client_url: client_url) - return false - end + issue.transitions.build.save!(transition: { id: transition_id }) + rescue => error + log_error("Issue transition failed", error: error.message, client_url: client_url) + return false end end diff --git a/app/models/repository.rb b/app/models/repository.rb index 285fce1e6ddf9c39126d35795e62b36cba413f13..ff35529586293d37ae81ca98654c2c9fa552db7a 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -265,16 +265,14 @@ def languages # to avoid unnecessary syncing. def keep_around(*shas) shas.each do |sha| - begin - next unless sha.present? && commit_by(oid: sha) + next unless sha.present? && commit_by(oid: sha) - next if kept_around?(sha) + next if kept_around?(sha) - # This will still fail if the file is corrupted (e.g. 0 bytes) - raw_repository.write_ref(keep_around_ref_name(sha), sha) - rescue Gitlab::Git::CommandError => ex - Rails.logger.error "Unable to create keep-around reference for repository #{disk_path}: #{ex}" - end + # This will still fail if the file is corrupted (e.g. 0 bytes) + raw_repository.write_ref(keep_around_ref_name(sha), sha) + rescue Gitlab::Git::CommandError => ex + Rails.logger.error "Unable to create keep-around reference for repository #{disk_path}: #{ex}" end end diff --git a/app/models/user_interacted_project.rb b/app/models/user_interacted_project.rb index ae6778e49be261291561308597fc95751ca3e854..5fc59b274f571b7e99b839fd01ec017480bbe831 100644 --- a/app/models/user_interacted_project.rb +++ b/app/models/user_interacted_project.rb @@ -26,16 +26,14 @@ def track(event) cached_exists?(attributes) do transaction(requires_new: true) do - begin - where(attributes).select(1).first || create!(attributes) - true # not caching the whole record here for now - rescue ActiveRecord::RecordNotUnique - # Note, above queries are not atomic and prone - # to race conditions (similar like #find_or_create!). - # In the case where we hit this, the record we want - # already exists - shortcut and return. - true - end + where(attributes).select(1).first || create!(attributes) + true # not caching the whole record here for now + rescue ActiveRecord::RecordNotUnique + # Note, above queries are not atomic and prone + # to race conditions (similar like #find_or_create!). + # In the case where we hit this, the record we want + # already exists - shortcut and return. + true end end end diff --git a/app/serializers/detailed_status_entity.rb b/app/serializers/detailed_status_entity.rb index da994d7828654934abb1e35b251af11d0ed4d2da..4f23ef0ed8212bddaeb3baf8403e72593f9f908c 100644 --- a/app/serializers/detailed_status_entity.rb +++ b/app/serializers/detailed_status_entity.rb @@ -9,16 +9,14 @@ class DetailedStatusEntity < Grape::Entity expose :details_path expose :illustration do |status| - begin - illustration = { - image: ActionController::Base.helpers.image_path(status.illustration[:image]) - } - illustration = status.illustration.merge(illustration) + illustration = { + image: ActionController::Base.helpers.image_path(status.illustration[:image]) + } + illustration = status.illustration.merge(illustration) - illustration - rescue NotImplementedError - # ignored - end + illustration + rescue NotImplementedError + # ignored end expose :favicon do |status| 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 7998976b00a2c175ce9c5ea8389a219ca7891fea..a9570176e81ea5a17fdf07b97af61e038933c72f 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 @@ -42,17 +42,15 @@ def get_download_links(oids) def parse_response_links(objects_response) objects_response.each_with_object([]) do |entry, link_list| - begin - link = entry.dig('actions', DOWNLOAD_ACTION, 'href') + link = entry.dig('actions', DOWNLOAD_ACTION, 'href') - raise DownloadLinkNotFound unless link + raise DownloadLinkNotFound unless link - link_list << LfsDownloadObject.new(oid: entry['oid'], - size: entry['size'], - link: add_credentials(link)) - rescue DownloadLinkNotFound, Addressable::URI::InvalidURIError - log_error("Link for Lfs Object with oid #{entry['oid']} not found or invalid.") - end + link_list << LfsDownloadObject.new(oid: entry['oid'], + size: entry['size'], + link: add_credentials(link)) + rescue DownloadLinkNotFound, Addressable::URI::InvalidURIError + log_error("Link for Lfs Object with oid #{entry['oid']} not found or invalid.") end end diff --git a/app/services/projects/lfs_pointers/lfs_download_service.rb b/app/services/projects/lfs_pointers/lfs_download_service.rb index 398f00a598d29ddb6bf626eb7f3765bcf1b828b6..a009f479d5d46d5a796d916aad09aad6414ac252 100644 --- a/app/services/projects/lfs_pointers/lfs_download_service.rb +++ b/app/services/projects/lfs_pointers/lfs_download_service.rb @@ -75,17 +75,15 @@ def with_tmp_file create_tmp_storage_dir File.open(tmp_filename, 'wb') do |file| - begin - yield file - rescue StandardError => e - # If the lfs file is successfully downloaded it will be removed - # when it is added to the project's lfs files. - # Nevertheless if any excetion raises the file would remain - # in the file system. Here we ensure to remove it - File.unlink(file) if File.exist?(file) - - raise e - end + yield file + rescue StandardError => e + # If the lfs file is successfully downloaded it will be removed + # when it is added to the project's lfs files. + # Nevertheless if any excetion raises the file would remain + # in the file system. Here we ensure to remove it + File.unlink(file) if File.exist?(file) + + raise e end end diff --git a/app/workers/concerns/waitable_worker.rb b/app/workers/concerns/waitable_worker.rb index 27b94a82444152331461ba88e749b51c74a0e5d4..17946bbc5ca9ea3a191d11f857c70fbf77284428 100644 --- a/app/workers/concerns/waitable_worker.rb +++ b/app/workers/concerns/waitable_worker.rb @@ -25,11 +25,9 @@ def bulk_perform_inline(args_list) failed = [] args_list.each do |args| - begin - new.perform(*args) - rescue - failed << args - end + new.perform(*args) + rescue + failed << args end bulk_perform_async(failed) if failed.present? diff --git a/app/workers/create_gpg_signature_worker.rb b/app/workers/create_gpg_signature_worker.rb index 49c7a403838726757a7075eb335bfab93b7769b3..2827529cc1cafbd83b0a0f49c5acaea8273034d0 100644 --- a/app/workers/create_gpg_signature_worker.rb +++ b/app/workers/create_gpg_signature_worker.rb @@ -20,11 +20,9 @@ def perform(commit_shas, project_id) # This calculates and caches the signature in the database commits.each do |commit| - begin - Gitlab::Gpg::Commit.new(commit).signature - rescue => e - Rails.logger.error("Failed to create signature for commit #{commit.id}. Error: #{e.message}") - end + Gitlab::Gpg::Commit.new(commit).signature + rescue => e + Rails.logger.error("Failed to create signature for commit #{commit.id}. Error: #{e.message}") end end # rubocop: enable CodeReuse/ActiveRecord diff --git a/app/workers/emails_on_push_worker.rb b/app/workers/emails_on_push_worker.rb index 17ad1d5ab88312ad7859b6861724e6a9a820d3c6..ed3e354e4c27d85314758f4f67f37a4be8d25351 100644 --- a/app/workers/emails_on_push_worker.rb +++ b/app/workers/emails_on_push_worker.rb @@ -52,24 +52,22 @@ def perform(project_id, recipients, push_data, options = {}) end valid_recipients(recipients).each do |recipient| - begin - send_email( - recipient, - project_id, - author_id: author_id, - ref: ref, - action: action, - compare: compare, - reverse_compare: reverse_compare, - diff_refs: diff_refs, - send_from_committer_email: send_from_committer_email, - disable_diffs: disable_diffs - ) - - # These are input errors and won't be corrected even if Sidekiq retries - rescue Net::SMTPFatalError, Net::SMTPSyntaxError => e - logger.info("Failed to send e-mail for project '#{project.full_name}' to #{recipient}: #{e}") - end + send_email( + recipient, + project_id, + author_id: author_id, + ref: ref, + action: action, + compare: compare, + reverse_compare: reverse_compare, + diff_refs: diff_refs, + send_from_committer_email: send_from_committer_email, + disable_diffs: disable_diffs + ) + + # These are input errors and won't be corrected even if Sidekiq retries + rescue Net::SMTPFatalError, Net::SMTPSyntaxError => e + logger.info("Failed to send e-mail for project '#{project.full_name}' to #{recipient}: #{e}") end ensure @email = nil diff --git a/app/workers/object_storage/migrate_uploads_worker.rb b/app/workers/object_storage/migrate_uploads_worker.rb index fe5d27b087d9d9cf470a09a99ff06433fb42fc44..206eb71b89887496b3923ee838a0ce152f86457c 100644 --- a/app/workers/object_storage/migrate_uploads_worker.rb +++ b/app/workers/object_storage/migrate_uploads_worker.rb @@ -126,11 +126,9 @@ def migrate(uploads) def process_uploader(uploader) MigrationResult.new(uploader.upload).tap do |result| - begin - uploader.migrate!(@to_store) - rescue => e - result.error = e - end + uploader.migrate!(@to_store) + rescue => e + result.error = e end end end diff --git a/app/workers/pipeline_schedule_worker.rb b/app/workers/pipeline_schedule_worker.rb index ac4e9710f3399698fb5114e6a58d38b445779da9..02a69ea3b5445a0203bdf360c240e04f557fd11c 100644 --- a/app/workers/pipeline_schedule_worker.rb +++ b/app/workers/pipeline_schedule_worker.rb @@ -8,16 +8,15 @@ class PipelineScheduleWorker def perform Ci::PipelineSchedule.active.where("next_run_at < ?", Time.now) .preload(:owner, :project).find_each do |schedule| - begin - Ci::CreatePipelineService.new(schedule.project, - schedule.owner, - ref: schedule.ref) - .execute!(:schedule, ignore_skip_ci: true, save_on_errors: true, schedule: schedule) - rescue => e - error(schedule, e) - ensure - schedule.schedule_next_run! - end + + Ci::CreatePipelineService.new(schedule.project, + schedule.owner, + ref: schedule.ref) + .execute!(:schedule, ignore_skip_ci: true, save_on_errors: true, schedule: schedule) + rescue => e + error(schedule, e) + ensure + schedule.schedule_next_run! end end # rubocop: enable CodeReuse/ActiveRecord diff --git a/app/workers/remove_expired_members_worker.rb b/app/workers/remove_expired_members_worker.rb index 41913900571ee3d211cd8ba2df5bc25672ffacae..3497a1f928064a63d2d06fd01074f6b7991f1041 100644 --- a/app/workers/remove_expired_members_worker.rb +++ b/app/workers/remove_expired_members_worker.rb @@ -6,11 +6,9 @@ class RemoveExpiredMembersWorker def perform Member.expired.find_each do |member| - begin - Members::DestroyService.new.execute(member, skip_authorization: true) - rescue => ex - logger.error("Expired Member ID=#{member.id} cannot be removed - #{ex}") - end + Members::DestroyService.new.execute(member, skip_authorization: true) + rescue => ex + logger.error("Expired Member ID=#{member.id} cannot be removed - #{ex}") end end end diff --git a/config/initializers/trusted_proxies.rb b/config/initializers/trusted_proxies.rb index 7af465d84432feaabb2f117219e883eb239998fe..1389640880670754c17dd7fa6ff87e9e4a1be2c6 100644 --- a/config/initializers/trusted_proxies.rb +++ b/config/initializers/trusted_proxies.rb @@ -14,10 +14,8 @@ def trusted_proxy?(ip) end gitlab_trusted_proxies = Array(Gitlab.config.gitlab.trusted_proxies).map do |proxy| - begin - IPAddr.new(proxy) - rescue IPAddr::InvalidAddressError - end + IPAddr.new(proxy) +rescue IPAddr::InvalidAddressError end.compact Rails.application.config.action_dispatch.trusted_proxies = ( diff --git a/db/migrate/20170530130129_project_foreign_keys_with_cascading_deletes.rb b/db/migrate/20170530130129_project_foreign_keys_with_cascading_deletes.rb index d40c61f24b114ce012155262c0596ad0d203bcd4..b4658bc40170b5a434753e2d0ddbccd70778855d 100644 --- a/db/migrate/20170530130129_project_foreign_keys_with_cascading_deletes.rb +++ b/db/migrate/20170530130129_project_foreign_keys_with_cascading_deletes.rb @@ -126,11 +126,10 @@ def steal_from_queues(queues) queues.each do |queue| # Stealing is racy so it's possible a pop might be called on an # already-empty queue. - begin - remove_orphans(*queue.pop(true)) - stolen = true - rescue ThreadError - end + + remove_orphans(*queue.pop(true)) + stolen = true + rescue ThreadError end break unless stolen diff --git a/lib/api/project_milestones.rb b/lib/api/project_milestones.rb index ca24742b7a36e7ddecf50414573935597c3afcbf..9ecbf37b49ab682e0be5014b5d3ec25d732edaba 100644 --- a/lib/api/project_milestones.rb +++ b/lib/api/project_milestones.rb @@ -103,17 +103,15 @@ class ProjectMilestones < Grape::API detail 'This feature was introduced in GitLab 11.9' end post ':id/milestones/:milestone_id/promote' do - begin - authorize! :admin_milestone, user_project - authorize! :admin_milestone, user_project.group + authorize! :admin_milestone, user_project + authorize! :admin_milestone, user_project.group - milestone = user_project.milestones.find(params[:milestone_id]) - Milestones::PromoteService.new(user_project, current_user).execute(milestone) + milestone = user_project.milestones.find(params[:milestone_id]) + Milestones::PromoteService.new(user_project, current_user).execute(milestone) - status(200) - rescue Milestones::PromoteService::PromoteMilestoneError => error - render_api_error!(error.message, 400) - end + status(200) + rescue Milestones::PromoteService::PromoteMilestoneError => error + render_api_error!(error.message, 400) end end end diff --git a/lib/api/repositories.rb b/lib/api/repositories.rb index 32e05d844913d995987aabe1095583e426b6eb11..4106a2cdf3863b977723280ddcc24e86232950b0 100644 --- a/lib/api/repositories.rb +++ b/lib/api/repositories.rb @@ -89,11 +89,9 @@ def assign_blob_vars! optional :format, type: String, desc: 'The archive format' end get ':id/repository/archive', requirements: { format: Gitlab::PathRegex.archive_formats_regex } do - begin - send_git_archive user_project.repository, ref: params[:sha], format: params[:format], append_sha: true - rescue - not_found!('File') - end + send_git_archive user_project.repository, ref: params[:sha], format: params[:format], append_sha: true + rescue + not_found!('File') end desc 'Compare two branches, tags, or commits' do @@ -118,12 +116,10 @@ def assign_blob_vars! optional :sort, type: String, values: %w[asc desc], default: 'asc', desc: 'Sort by asc (ascending) or desc (descending)' end get ':id/repository/contributors' do - begin - contributors = ::Kaminari.paginate_array(user_project.repository.contributors(order_by: params[:order_by], sort: params[:sort])) - present paginate(contributors), with: Entities::Contributor - rescue - not_found! - end + contributors = ::Kaminari.paginate_array(user_project.repository.contributors(order_by: params[:order_by], sort: params[:sort])) + present paginate(contributors), with: Entities::Contributor + rescue + not_found! end desc 'Get the common ancestor between commits' do diff --git a/lib/gitlab/background_migration/archive_legacy_traces.rb b/lib/gitlab/background_migration/archive_legacy_traces.rb index 92096e29ef10dba363823eddfe001cf1f27f348b..7ee783b8489cc6a191168f35b5adf451fc661783 100644 --- a/lib/gitlab/background_migration/archive_legacy_traces.rb +++ b/lib/gitlab/background_migration/archive_legacy_traces.rb @@ -11,11 +11,10 @@ def perform(start_id, stop_id) # So we chose a way to use ::Ci::Build directly and we don't change the `archive!` method until 11.1 ::Ci::Build.finished.without_archived_trace .where(id: start_id..stop_id).find_each do |build| - begin - build.trace.archive! - rescue => e - Rails.logger.error "Failed to archive live trace. id: #{build.id} message: #{e.message}" - end + + build.trace.archive! + rescue => e + Rails.logger.error "Failed to archive live trace. id: #{build.id} message: #{e.message}" end end end diff --git a/lib/gitlab/background_migration/normalize_ldap_extern_uids_range.rb b/lib/gitlab/background_migration/normalize_ldap_extern_uids_range.rb index 698f5e46c0cf29906db7ac2701f0372f78ca357f..48aa369705f3a8757498db95015f36d0f7dcd626 100644 --- a/lib/gitlab/background_migration/normalize_ldap_extern_uids_range.rb +++ b/lib/gitlab/background_migration/normalize_ldap_extern_uids_range.rb @@ -302,14 +302,12 @@ def perform(start_id, end_id) ldap_identities = Identity.where("provider like 'ldap%'").where(id: start_id..end_id) ldap_identities.each do |identity| - begin - identity.extern_uid = Gitlab::Auth::LDAP::DN.new(identity.extern_uid).to_normalized_s - unless identity.save - Rails.logger.info "Unable to normalize \"#{identity.extern_uid}\". Skipping." - end - rescue Gitlab::Auth::LDAP::DN::FormatError => e - Rails.logger.info "Unable to normalize \"#{identity.extern_uid}\" due to \"#{e.message}\". Skipping." + identity.extern_uid = Gitlab::Auth::LDAP::DN.new(identity.extern_uid).to_normalized_s + unless identity.save + Rails.logger.info "Unable to normalize \"#{identity.extern_uid}\". Skipping." end + rescue Gitlab::Auth::LDAP::DN::FormatError => e + Rails.logger.info "Unable to normalize \"#{identity.extern_uid}\" due to \"#{e.message}\". Skipping." end end diff --git a/lib/gitlab/background_migration/populate_untracked_uploads.rb b/lib/gitlab/background_migration/populate_untracked_uploads.rb index a19dc9747fbbd710fcbffbe21c879817a77a33d6..755b5ee725af24c6739c7a7f889f8fb3a90477a0 100644 --- a/lib/gitlab/background_migration/populate_untracked_uploads.rb +++ b/lib/gitlab/background_migration/populate_untracked_uploads.rb @@ -34,18 +34,16 @@ def insert_uploads_if_needed(files) def filter_error_files(files) files.partition do |file| - begin - file.to_h - true - rescue => e - msg = <<~MSG + file.to_h + true + rescue => e + msg = <<~MSG Error parsing path "#{file.path}": #{e.message} #{e.backtrace.join("\n ")} MSG - Rails.logger.error(msg) - false - end + Rails.logger.error(msg) + false end end diff --git a/lib/gitlab/bitbucket_import/importer.rb b/lib/gitlab/bitbucket_import/importer.rb index 441fdec8a1eb71fb7c2d2d4ac5da2add1db3a5ed..769d3279f911e6c7ec972ba59188d47f3665961a 100644 --- a/lib/gitlab/bitbucket_import/importer.rb +++ b/lib/gitlab/bitbucket_import/importer.rb @@ -79,31 +79,29 @@ def import_issues create_labels client.issues(repo).each do |issue| - begin - description = '' - description += @formatter.author_line(issue.author) unless find_user_id(issue.author) - description += issue.description - - label_name = issue.kind - milestone = issue.milestone ? project.milestones.find_or_create_by(title: issue.milestone) : nil - - gitlab_issue = project.issues.create!( - iid: issue.iid, - title: issue.title, - description: description, - state: issue.state, - author_id: gitlab_user_id(project, issue.author), - milestone: milestone, - created_at: issue.created_at, - updated_at: issue.updated_at - ) - - gitlab_issue.labels << @labels[label_name] - - import_issue_comments(issue, gitlab_issue) if gitlab_issue.persisted? - rescue StandardError => e - errors << { type: :issue, iid: issue.iid, errors: e.message } - end + description = '' + description += @formatter.author_line(issue.author) unless find_user_id(issue.author) + description += issue.description + + label_name = issue.kind + milestone = issue.milestone ? project.milestones.find_or_create_by(title: issue.milestone) : nil + + gitlab_issue = project.issues.create!( + iid: issue.iid, + title: issue.title, + description: description, + state: issue.state, + author_id: gitlab_user_id(project, issue.author), + milestone: milestone, + created_at: issue.created_at, + updated_at: issue.updated_at + ) + + gitlab_issue.labels << @labels[label_name] + + import_issue_comments(issue, gitlab_issue) if gitlab_issue.persisted? + rescue StandardError => e + errors << { type: :issue, iid: issue.iid, errors: e.message } end end # rubocop: enable CodeReuse/ActiveRecord @@ -150,37 +148,35 @@ def import_pull_requests pull_requests = client.pull_requests(repo) pull_requests.each do |pull_request| - begin - description = '' - description += @formatter.author_line(pull_request.author) unless find_user_id(pull_request.author) - description += pull_request.description - - source_branch_sha = pull_request.source_branch_sha - target_branch_sha = pull_request.target_branch_sha - source_branch_sha = project.repository.commit(source_branch_sha)&.sha || source_branch_sha - target_branch_sha = project.repository.commit(target_branch_sha)&.sha || target_branch_sha - - merge_request = project.merge_requests.create!( - iid: pull_request.iid, - title: pull_request.title, - description: description, - source_project: project, - source_branch: pull_request.source_branch_name, - source_branch_sha: source_branch_sha, - target_project: project, - target_branch: pull_request.target_branch_name, - target_branch_sha: target_branch_sha, - state: pull_request.state, - author_id: gitlab_user_id(project, pull_request.author), - assignee_id: nil, - created_at: pull_request.created_at, - updated_at: pull_request.updated_at - ) - - import_pull_request_comments(pull_request, merge_request) if merge_request.persisted? - rescue StandardError => e - errors << { type: :pull_request, iid: pull_request.iid, errors: e.message, trace: e.backtrace.join("\n"), raw_response: pull_request.raw } - end + description = '' + description += @formatter.author_line(pull_request.author) unless find_user_id(pull_request.author) + description += pull_request.description + + source_branch_sha = pull_request.source_branch_sha + target_branch_sha = pull_request.target_branch_sha + source_branch_sha = project.repository.commit(source_branch_sha)&.sha || source_branch_sha + target_branch_sha = project.repository.commit(target_branch_sha)&.sha || target_branch_sha + + merge_request = project.merge_requests.create!( + iid: pull_request.iid, + title: pull_request.title, + description: description, + source_project: project, + source_branch: pull_request.source_branch_name, + source_branch_sha: source_branch_sha, + target_project: project, + target_branch: pull_request.target_branch_name, + target_branch_sha: target_branch_sha, + state: pull_request.state, + author_id: gitlab_user_id(project, pull_request.author), + assignee_id: nil, + created_at: pull_request.created_at, + updated_at: pull_request.updated_at + ) + + import_pull_request_comments(pull_request, merge_request) if merge_request.persisted? + rescue StandardError => e + errors << { type: :pull_request, iid: pull_request.iid, errors: e.message, trace: e.backtrace.join("\n"), raw_response: pull_request.raw } end end @@ -211,23 +207,21 @@ def import_inline_comments(inline_comments, pull_request, merge_request) end inline_comments.each do |comment| - begin - attributes = pull_request_comment_attributes(comment) - attributes[:discussion_id] = discussion_map[comment.parent_id] if comment.has_parent? + attributes = pull_request_comment_attributes(comment) + attributes[:discussion_id] = discussion_map[comment.parent_id] if comment.has_parent? - attributes.merge!( - position: position_map[comment.iid], - type: 'DiffNote') + attributes.merge!( + position: position_map[comment.iid], + type: 'DiffNote') - note = merge_request.notes.create!(attributes) + note = merge_request.notes.create!(attributes) - # We can't store a discussion ID until a note is created, so if - # replies are created before the parent the discussion ID won't be - # linked properly. - discussion_map[comment.iid] = note.discussion_id - rescue StandardError => e - errors << { type: :pull_request, iid: comment.iid, errors: e.message } - end + # We can't store a discussion ID until a note is created, so if + # replies are created before the parent the discussion ID won't be + # linked properly. + discussion_map[comment.iid] = note.discussion_id + rescue StandardError => e + errors << { type: :pull_request, iid: comment.iid, errors: e.message } end end @@ -245,11 +239,9 @@ def build_position(merge_request, pr_comment) def import_standalone_pr_comments(pr_comments, merge_request) pr_comments.each do |comment| - begin - merge_request.notes.create!(pull_request_comment_attributes(comment)) - rescue StandardError => e - errors << { type: :pull_request, iid: comment.iid, errors: e.message } - end + merge_request.notes.create!(pull_request_comment_attributes(comment)) + rescue StandardError => e + errors << { type: :pull_request, iid: comment.iid, errors: e.message } end end diff --git a/lib/gitlab/bitbucket_server_import/importer.rb b/lib/gitlab/bitbucket_server_import/importer.rb index 4a789ae457f2953e31222aa850f28427101a9879..1d3ddeeb0f13dba0ccad0dffa1b5a9f702243d80 100644 --- a/lib/gitlab/bitbucket_server_import/importer.rb +++ b/lib/gitlab/bitbucket_server_import/importer.rb @@ -162,27 +162,23 @@ def import_pull_requests restore_branches(batch) if recover_missing_commits batch.each do |pull_request| - begin - import_bitbucket_pull_request(pull_request) - rescue StandardError => e - backtrace = Gitlab::Profiler.clean_backtrace(e.backtrace) - log_error(stage: 'import_pull_requests', iid: pull_request.iid, error: e.message, backtrace: backtrace) - - errors << { type: :pull_request, iid: pull_request.iid, errors: e.message, backtrace: backtrace.join("\n"), raw_response: pull_request.raw } - end + import_bitbucket_pull_request(pull_request) + rescue StandardError => e + backtrace = Gitlab::Profiler.clean_backtrace(e.backtrace) + log_error(stage: 'import_pull_requests', iid: pull_request.iid, error: e.message, backtrace: backtrace) + + errors << { type: :pull_request, iid: pull_request.iid, errors: e.message, backtrace: backtrace.join("\n"), raw_response: pull_request.raw } end end end def delete_temp_branches @temp_branches.each do |branch| - begin - client.delete_branch(project_key, repository_slug, branch.name, branch.sha) - project.repository.delete_branch(branch.name) - rescue BitbucketServer::Connection::ConnectionError => e - log_error(stage: 'delete_temp_branches', branch: branch.name, error: e.message) - @errors << { type: :delete_temp_branches, branch_name: branch.name, errors: e.message } - end + client.delete_branch(project_key, repository_slug, branch.name, branch.sha) + project.repository.delete_branch(branch.name) + rescue BitbucketServer::Connection::ConnectionError => e + log_error(stage: 'delete_temp_branches', branch: branch.name, error: e.message) + @errors << { type: :delete_temp_branches, branch_name: branch.name, errors: e.message } end end @@ -323,16 +319,14 @@ def build_position(merge_request, pr_comment) def import_standalone_pr_comments(pr_comments, merge_request) pr_comments.each do |comment| - begin - merge_request.notes.create!(pull_request_comment_attributes(comment)) + merge_request.notes.create!(pull_request_comment_attributes(comment)) - comment.comments.each do |replies| - merge_request.notes.create!(pull_request_comment_attributes(replies)) - end - rescue StandardError => e - log_error(stage: 'import_standalone_pr_comments', merge_request_id: merge_request.id, comment_id: comment.id, error: e.message) - errors << { type: :pull_request, comment_id: comment.id, errors: e.message } + comment.comments.each do |replies| + merge_request.notes.create!(pull_request_comment_attributes(replies)) end + rescue StandardError => e + log_error(stage: 'import_standalone_pr_comments', merge_request_id: merge_request.id, comment_id: comment.id, error: e.message) + errors << { type: :pull_request, comment_id: comment.id, errors: e.message } end end diff --git a/lib/gitlab/ci/build/artifacts/metadata.rb b/lib/gitlab/ci/build/artifacts/metadata.rb index d45a044686ec127f724507f6160dc3fa97489f95..7011dd1aaf2f2ecf986ab0f0410455162c9ad851 100644 --- a/lib/gitlab/ci/build/artifacts/metadata.rb +++ b/lib/gitlab/ci/build/artifacts/metadata.rb @@ -98,7 +98,7 @@ def read_version def read_uint32(gz) binary = gz.read(4) - binary.unpack('L>')[0] if binary + binary.unpack1('L>') if binary end def read_string(gz) diff --git a/lib/gitlab/database/multi_threaded_migration.rb b/lib/gitlab/database/multi_threaded_migration.rb index 1d39a3d0b57dc7f38c88073a55ede8b2f0ff565d..65a6cb8e369dc4dad1137812eb77e05ee2b64243 100644 --- a/lib/gitlab/database/multi_threaded_migration.rb +++ b/lib/gitlab/database/multi_threaded_migration.rb @@ -35,12 +35,10 @@ def with_multiple_threads(thread_count, join: true) threads = Array.new(thread_count) do Thread.new do pool.with_connection do |connection| - begin - Thread.current[MULTI_THREAD_AR_CONNECTION] = connection - yield - ensure - Thread.current[MULTI_THREAD_AR_CONNECTION] = nil - end + Thread.current[MULTI_THREAD_AR_CONNECTION] = connection + yield + ensure + Thread.current[MULTI_THREAD_AR_CONNECTION] = nil end end end diff --git a/lib/gitlab/database/sha_attribute.rb b/lib/gitlab/database/sha_attribute.rb index 8d97adaff99d693382ffd67a5d78b8ecbcc8a68e..109ae7893dad3a5a08eb24bfb22f147438527716 100644 --- a/lib/gitlab/database/sha_attribute.rb +++ b/lib/gitlab/database/sha_attribute.rb @@ -22,7 +22,7 @@ class ShaAttribute < BINARY_TYPE # Casts binary data to a SHA1 in hexadecimal. def deserialize(value) value = super(value) - value ? value.unpack(PACK_FORMAT)[0] : nil + value ? value.unpack1(PACK_FORMAT) : nil end # Casts a SHA1 in hexadecimal to the proper binary format. diff --git a/lib/gitlab/gitaly_client.rb b/lib/gitlab/gitaly_client.rb index 0a371889af20e8de9402729d82cd83f4d7d3aba7..e3b9a7a1a89bea16e6b91c5ec20d8c9874c2849e 100644 --- a/lib/gitlab/gitaly_client.rb +++ b/lib/gitlab/gitaly_client.rb @@ -75,13 +75,11 @@ def self.stub_certs @certs = stub_cert_paths.flat_map do |cert_file| File.read(cert_file).scan(PEM_REGEX).map do |cert| - begin - OpenSSL::X509::Certificate.new(cert).to_pem - rescue OpenSSL::OpenSSLError => e - Rails.logger.error "Could not load certificate #{cert_file} #{e}" - Gitlab::Sentry.track_exception(e, extra: { cert_file: cert_file }) - nil - end + OpenSSL::X509::Certificate.new(cert).to_pem + rescue OpenSSL::OpenSSLError => e + Rails.logger.error "Could not load certificate #{cert_file} #{e}" + Gitlab::Sentry.track_exception(e, extra: { cert_file: cert_file }) + nil end.compact end.uniq.join("\n") end diff --git a/lib/gitlab/gitaly_client/blobs_stitcher.rb b/lib/gitlab/gitaly_client/blobs_stitcher.rb index 01bab854082aa5f4b9374af103c310c2ae2dbc19..f860d8ce5178ebafec4459b58cb4b088b9b11e43 100644 --- a/lib/gitlab/gitaly_client/blobs_stitcher.rb +++ b/lib/gitlab/gitaly_client/blobs_stitcher.rb @@ -13,17 +13,15 @@ def each current_blob_data = nil @rpc_response.each do |msg| - begin - if msg.oid.blank? && msg.data.blank? - next - elsif msg.oid.present? - yield new_blob(current_blob_data) if current_blob_data - - current_blob_data = msg.to_h.slice(:oid, :path, :size, :revision, :mode) - current_blob_data[:data] = msg.data.dup - else - current_blob_data[:data] << msg.data - end + if msg.oid.blank? && msg.data.blank? + next + elsif msg.oid.present? + yield new_blob(current_blob_data) if current_blob_data + + current_blob_data = msg.to_h.slice(:oid, :path, :size, :revision, :mode) + current_blob_data[:data] = msg.data.dup + else + current_blob_data[:data] << msg.data end end diff --git a/lib/gitlab/legacy_github_import/importer.rb b/lib/gitlab/legacy_github_import/importer.rb index f3323c98af22088912886b857cf103f59688d7a4..70b18221a66e7a50133a00ff44aedf299c458cae 100644 --- a/lib/gitlab/legacy_github_import/importer.rb +++ b/lib/gitlab/legacy_github_import/importer.rb @@ -89,12 +89,10 @@ def handle_errors def import_labels fetch_resources(:labels, repo, per_page: 100) do |labels| labels.each do |raw| - begin - gh_label = LabelFormatter.new(project, raw) - gh_label.create! - rescue => e - errors << { type: :label, url: Gitlab::UrlSanitizer.sanitize(gh_label.url), errors: e.message } - end + gh_label = LabelFormatter.new(project, raw) + gh_label.create! + rescue => e + errors << { type: :label, url: Gitlab::UrlSanitizer.sanitize(gh_label.url), errors: e.message } end end @@ -104,12 +102,10 @@ def import_labels def import_milestones fetch_resources(:milestones, repo, state: :all, per_page: 100) do |milestones| milestones.each do |raw| - begin - gh_milestone = MilestoneFormatter.new(project, raw) - gh_milestone.create! - rescue => e - errors << { type: :milestone, url: Gitlab::UrlSanitizer.sanitize(gh_milestone.url), errors: e.message } - end + gh_milestone = MilestoneFormatter.new(project, raw) + gh_milestone.create! + rescue => e + errors << { type: :milestone, url: Gitlab::UrlSanitizer.sanitize(gh_milestone.url), errors: e.message } end end end @@ -223,24 +219,22 @@ def import_comments(issuable_type) def create_comments(comments) ActiveRecord::Base.no_touching do comments.each do |raw| - begin - comment = CommentFormatter.new(project, raw, client) + comment = CommentFormatter.new(project, raw, client) - # GH does not return info about comment's parent, so we guess it by checking its URL! - *_, parent, iid = URI(raw.html_url).path.split('/') + # GH does not return info about comment's parent, so we guess it by checking its URL! + *_, parent, iid = URI(raw.html_url).path.split('/') - issuable = if parent == 'issues' - Issue.find_by(project_id: project.id, iid: iid) - else - MergeRequest.find_by(target_project_id: project.id, iid: iid) - end + issuable = if parent == 'issues' + Issue.find_by(project_id: project.id, iid: iid) + else + MergeRequest.find_by(target_project_id: project.id, iid: iid) + end - next unless issuable + next unless issuable - issuable.notes.create!(comment.attributes) - rescue => e - errors << { type: :comment, url: Gitlab::UrlSanitizer.sanitize(raw.url), errors: e.message } - end + issuable.notes.create!(comment.attributes) + rescue => e + errors << { type: :comment, url: Gitlab::UrlSanitizer.sanitize(raw.url), errors: e.message } end end end @@ -281,12 +275,10 @@ def import_wiki def import_releases fetch_resources(:releases, repo, per_page: 100) do |releases| releases.each do |raw| - begin - gh_release = ReleaseFormatter.new(project, raw) - gh_release.create! if gh_release.valid? - rescue => e - errors << { type: :release, url: Gitlab::UrlSanitizer.sanitize(gh_release.url), errors: e.message } - end + gh_release = ReleaseFormatter.new(project, raw) + gh_release.create! if gh_release.valid? + rescue => e + errors << { type: :release, url: Gitlab::UrlSanitizer.sanitize(gh_release.url), errors: e.message } end end end diff --git a/lib/gitlab/metrics/influx_db.rb b/lib/gitlab/metrics/influx_db.rb index 0b04340fbb55ee8fdb7fcedb352f6dce4e56fa61..269d90fa971a50f5fd392c9c90369872e2486d7f 100644 --- a/lib/gitlab/metrics/influx_db.rb +++ b/lib/gitlab/metrics/influx_db.rb @@ -52,10 +52,8 @@ def submit_metrics(metrics) pool&.with do |connection| prepared.each_slice(settings[:packet_size]) do |slice| - begin - connection.write_points(slice) - rescue StandardError - end + connection.write_points(slice) + rescue StandardError end end rescue Errno::EADDRNOTAVAIL, SocketError => ex diff --git a/lib/tasks/gitlab/artifacts/migrate.rake b/lib/tasks/gitlab/artifacts/migrate.rake index e7634d2ed4f3aa984f9f6461bf64f1b5ad3fc76d..9012e55a70cc7c7f7b63035b35322e82d265c86e 100644 --- a/lib/tasks/gitlab/artifacts/migrate.rake +++ b/lib/tasks/gitlab/artifacts/migrate.rake @@ -11,14 +11,13 @@ namespace :gitlab do Ci::Build.joins(:project) .with_artifacts_stored_locally .find_each(batch_size: 10) do |build| - begin - build.artifacts_file.migrate!(ObjectStorage::Store::REMOTE) - build.artifacts_metadata.migrate!(ObjectStorage::Store::REMOTE) - logger.info("Transferred artifact ID #{build.id} with size #{build.artifacts_size} to object storage") - rescue => e - logger.error("Failed to transfer artifacts of #{build.id} with error: #{e.message}") - end + build.artifacts_file.migrate!(ObjectStorage::Store::REMOTE) + build.artifacts_metadata.migrate!(ObjectStorage::Store::REMOTE) + + logger.info("Transferred artifact ID #{build.id} with size #{build.artifacts_size} to object storage") + rescue => e + logger.error("Failed to transfer artifacts of #{build.id} with error: #{e.message}") end end end diff --git a/lib/tasks/gitlab/lfs/migrate.rake b/lib/tasks/gitlab/lfs/migrate.rake index a45e5ca91e0ca932e413e3187f049f7dba5763e1..97c15175a23e4a57ecb0f73956a06b98783903f3 100644 --- a/lib/tasks/gitlab/lfs/migrate.rake +++ b/lib/tasks/gitlab/lfs/migrate.rake @@ -9,13 +9,12 @@ namespace :gitlab do LfsObject.with_files_stored_locally .find_each(batch_size: 10) do |lfs_object| - begin - lfs_object.file.migrate!(LfsObjectUploader::Store::REMOTE) - logger.info("Transferred LFS object #{lfs_object.oid} of size #{lfs_object.size.to_i.bytes} to object storage") - rescue => e - logger.error("Failed to transfer LFS object #{lfs_object.oid} with error: #{e.message}") - end + lfs_object.file.migrate!(LfsObjectUploader::Store::REMOTE) + + logger.info("Transferred LFS object #{lfs_object.oid} of size #{lfs_object.size.to_i.bytes} to object storage") + rescue => e + logger.error("Failed to transfer LFS object #{lfs_object.oid} with error: #{e.message}") end end end diff --git a/lib/tasks/gitlab/traces.rake b/lib/tasks/gitlab/traces.rake index 5a232091a7edd8febf93d2a8f3b636562820a0f8..5e1ec481ece9e83263946f78a244270ee5cbf498 100644 --- a/lib/tasks/gitlab/traces.rake +++ b/lib/tasks/gitlab/traces.rake @@ -26,13 +26,12 @@ namespace :gitlab do Ci::Build.joins(:project) .with_archived_trace_stored_locally .find_each(batch_size: 10) do |build| - begin - build.job_artifacts_trace.file.migrate!(ObjectStorage::Store::REMOTE) - logger.info("Transferred job trace of #{build.id} to object storage") - rescue => e - logger.error("Failed to transfer artifacts of #{build.id} with error: #{e.message}") - end + build.job_artifacts_trace.file.migrate!(ObjectStorage::Store::REMOTE) + + logger.info("Transferred job trace of #{build.id} to object storage") + rescue => e + logger.error("Failed to transfer artifacts of #{build.id} with error: #{e.message}") end end end diff --git a/lib/tasks/lint.rake b/lib/tasks/lint.rake index 5d673a1a2855d52b8711e0e7829bc17a1510ef8f..c5d0f2c292fe347c0a04c2fd9a02a1c604d87065 100644 --- a/lib/tasks/lint.rake +++ b/lib/tasks/lint.rake @@ -19,11 +19,9 @@ unless Rails.env.production? desc "GitLab | lint | Lint HAML files" task :haml do - begin - Rake::Task['haml_lint'].invoke - rescue RuntimeError # The haml_lint tasks raise a RuntimeError - exit(1) - end + Rake::Task['haml_lint'].invoke + rescue RuntimeError # The haml_lint tasks raise a RuntimeError + exit(1) end desc "GitLab | lint | Run several lint checks" diff --git a/lib/tasks/migrate/migrate_iids.rake b/lib/tasks/migrate/migrate_iids.rake index aa2d01730d7ce57e5d481afca1801fafc3042d1e..cb7c496c31cc3b27db031758500cceff1d1e1714 100644 --- a/lib/tasks/migrate/migrate_iids.rake +++ b/lib/tasks/migrate/migrate_iids.rake @@ -2,49 +2,43 @@ desc "GitLab | Build internal ids for issues and merge requests" task migrate_iids: :environment do puts 'Issues'.color(:yellow) Issue.where(iid: nil).find_each(batch_size: 100) do |issue| - begin - issue.set_iid + issue.set_iid - if issue.update_attribute(:iid, issue.iid) - print '.' - else - print 'F' - end - rescue + if issue.update_attribute(:iid, issue.iid) + print '.' + else print 'F' end + rescue + print 'F' end puts 'done' puts 'Merge Requests'.color(:yellow) MergeRequest.where(iid: nil).find_each(batch_size: 100) do |mr| - begin - mr.set_iid + mr.set_iid - if mr.update_attribute(:iid, mr.iid) - print '.' - else - print 'F' - end - rescue + if mr.update_attribute(:iid, mr.iid) + print '.' + else print 'F' end + rescue + print 'F' end puts 'done' puts 'Milestones'.color(:yellow) Milestone.where(iid: nil).find_each(batch_size: 100) do |m| - begin - m.set_iid + m.set_iid - if m.update_attribute(:iid, m.iid) - print '.' - else - print 'F' - end - rescue + if m.update_attribute(:iid, m.iid) + print '.' + else print 'F' end + rescue + print 'F' end puts 'done' diff --git a/qa/qa/page/project/web_ide/edit.rb b/qa/qa/page/project/web_ide/edit.rb index 2b6c01888d59a148af13124b4a54b67837eab3d8..ff7cc04e352c3532443c7838f81fe512a6edc72e 100644 --- a/qa/qa/page/project/web_ide/edit.rb +++ b/qa/qa/page/project/web_ide/edit.rb @@ -43,11 +43,9 @@ def has_file?(file_name) def create_new_file_from_template(file_name, template) click_element :new_file within_element(:template_list) do - begin - click_on file_name - rescue Capybara::ElementNotFound - raise ElementNotFound, %Q(Couldn't find file template named "#{file_name}". Please confirm that it is a valid option.) - end + click_on file_name + rescue Capybara::ElementNotFound + raise ElementNotFound, %Q(Couldn't find file template named "#{file_name}". Please confirm that it is a valid option.) end wait(reload: false) do diff --git a/scripts/gitaly_test.rb b/scripts/gitaly_test.rb index dee4c2eba7e19bb172936780b1b2fb85ae675ebd..b5d3facd18aecebbf27f436d3370280ab293430e 100644 --- a/scripts/gitaly_test.rb +++ b/scripts/gitaly_test.rb @@ -79,15 +79,13 @@ def try_connect! socket = read_socket_path Integer(timeout / delay).times do - begin - UNIXSocket.new(socket) - puts ' OK' - - return - rescue Errno::ENOENT, Errno::ECONNREFUSED - print '.' - sleep delay - end + UNIXSocket.new(socket) + puts ' OK' + + return + rescue Errno::ENOENT, Errno::ECONNREFUSED + print '.' + sleep delay end puts ' FAILED' diff --git a/scripts/merge-simplecov b/scripts/merge-simplecov index 65f93f8830b7a7a07c7b02345b1e9cccbf26cff5..746be3317a7df3b0932e70cd30edae60a3ec6664 100755 --- a/scripts/merge-simplecov +++ b/scripts/merge-simplecov @@ -12,11 +12,9 @@ module SimpleCov def resultset_hashes resultset_files.map do |path| - begin - JSON.parse(File.read(path)) - rescue - {} - end + JSON.parse(File.read(path)) + rescue + {} end end diff --git a/spec/lib/gitlab/background_migration/deserialize_merge_request_diffs_and_commits_spec.rb b/spec/lib/gitlab/background_migration/deserialize_merge_request_diffs_and_commits_spec.rb index bc71a90605ad4e26de78d6fbb05f30736baf88aa..e7ff9169f1bce5ec8a2a0c1bb39ebb8067708904 100644 --- a/spec/lib/gitlab/background_migration/deserialize_merge_request_diffs_and_commits_spec.rb +++ b/spec/lib/gitlab/background_migration/deserialize_merge_request_diffs_and_commits_spec.rb @@ -172,10 +172,8 @@ def convert_to_yaml(merge_request_diff_id, commits, diffs) let(:exception) { ActiveRecord::RecordNotFound } let(:perform_ignoring_exceptions) do - begin - subject.perform(start_id, stop_id) - rescue described_class::Error - end + subject.perform(start_id, stop_id) + rescue described_class::Error end before do diff --git a/spec/lib/gitlab/git/repository_cleaner_spec.rb b/spec/lib/gitlab/git/repository_cleaner_spec.rb index 7f9cc2bc9eced9834cd4f5bb4e00a6898a7b8f3e..6602f22843fb802835ecbef0a7072821f24200fc 100644 --- a/spec/lib/gitlab/git/repository_cleaner_spec.rb +++ b/spec/lib/gitlab/git/repository_cleaner_spec.rb @@ -37,14 +37,12 @@ let(:object_map) { Gitlab::HttpIO.new(url, object_map_data.size) } around do |example| - begin - tempfile.write(object_map_data) - tempfile.close + tempfile.write(object_map_data) + tempfile.close - example.run - ensure - tempfile.unlink - end + example.run + ensure + tempfile.unlink end it 'removes internal references' do diff --git a/spec/rack_servers/puma_spec.rb b/spec/rack_servers/puma_spec.rb index 431fab87857430efa0d489fc2851a9c8d7b19828..891df4f1a66d6b11c116dd46f89af3f0b2c03d3a 100644 --- a/spec/rack_servers/puma_spec.rb +++ b/spec/rack_servers/puma_spec.rb @@ -44,11 +44,9 @@ end after(:all) do - begin - WebMock.disable_net_connect!(allow_localhost: true) - Process.kill('TERM', @puma_master_pid) - rescue Errno::ESRCH - end + WebMock.disable_net_connect!(allow_localhost: true) + Process.kill('TERM', @puma_master_pid) + rescue Errno::ESRCH end def wait_puma_boot!(master_pid, ready_file) diff --git a/spec/services/projects/destroy_service_spec.rb b/spec/services/projects/destroy_service_spec.rb index dfbdfa2ab69fbddff30f0f49339d3504904abc1f..d3a8ee46f8596f774a8f9862dacdf52c179c3023 100644 --- a/spec/services/projects/destroy_service_spec.rb +++ b/spec/services/projects/destroy_service_spec.rb @@ -128,10 +128,8 @@ it 'keeps project team intact upon an error' do perform_enqueued_jobs do - begin - destroy_project(project, user, {}) - rescue ::Redis::CannotConnectError - end + destroy_project(project, user, {}) + rescue ::Redis::CannotConnectError end expect(project.team.members.count).to eq 2 diff --git a/spec/support/helpers/graphql_helpers.rb b/spec/support/helpers/graphql_helpers.rb index 6cdc19ac2e557933ed32f488a8cc3811e4f49933..ca28325eab9be2b39c97724f08ace1a6c20cd141 100644 --- a/spec/support/helpers/graphql_helpers.rb +++ b/spec/support/helpers/graphql_helpers.rb @@ -18,12 +18,10 @@ def resolve(resolver_class, obj: nil, args: {}, ctx: {}) # Runs a block inside a BatchLoader::Executor wrapper def batch(max_queries: nil, &blk) wrapper = proc do - begin - BatchLoader::Executor.ensure_current - yield - ensure - BatchLoader::Executor.clear_current - end + BatchLoader::Executor.ensure_current + yield + ensure + BatchLoader::Executor.clear_current end if max_queries diff --git a/spec/support/helpers/stub_object_storage.rb b/spec/support/helpers/stub_object_storage.rb index e0c50e533a6e7aa4e9f9c2227ed3fad7825f2801..30c8477f16a53857e390c1adae0b13409ecf6065 100644 --- a/spec/support/helpers/stub_object_storage.rb +++ b/spec/support/helpers/stub_object_storage.rb @@ -23,15 +23,13 @@ def stub_object_storage(connection_params:, remote_directory:) Fog.mock! ::Fog::Storage.new(connection_params).tap do |connection| - begin - connection.directories.create(key: remote_directory) + connection.directories.create(key: remote_directory) - # Cleanup remaining files - connection.directories.each do |directory| - directory.files.map(&:destroy) - end - rescue Excon::Error::Conflict + # Cleanup remaining files + connection.directories.each do |directory| + directory.files.map(&:destroy) end + rescue Excon::Error::Conflict end end diff --git a/spec/support/helpers/test_env.rb b/spec/support/helpers/test_env.rb index 80a22134021fac5fdc8cb87f41a3169b2999ce9d..dc902d373b8e4de60ad8697f5a5d751ee2530909 100644 --- a/spec/support/helpers/test_env.rb +++ b/spec/support/helpers/test_env.rb @@ -202,12 +202,10 @@ def wait_gitaly socket = Gitlab::GitalyClient.address('default').sub('unix:', '') Integer(sleep_time / sleep_interval).times do - begin - Socket.unix(socket) - return - rescue - sleep sleep_interval - end + Socket.unix(socket) + return + rescue + sleep sleep_interval end raise "could not connect to gitaly at #{socket.inspect} after #{sleep_time} seconds"