diff --git a/app/controllers/projects/error_tracking_controller.rb b/app/controllers/projects/error_tracking_controller.rb index b4b03e219ab..8700d3c2198 100644 --- a/app/controllers/projects/error_tracking_controller.rb +++ b/app/controllers/projects/error_tracking_controller.rb @@ -27,7 +27,7 @@ class Projects::ErrorTrackingController < Projects::ErrorTracking::BaseControlle end def update - service = ErrorTracking::IssueUpdateService.new(project, current_user, issue_update_params) + service = ::ErrorTracking::IssueUpdateService.new(project, current_user, issue_update_params) result = service.execute return if render_errors(result) @@ -40,7 +40,7 @@ class Projects::ErrorTrackingController < Projects::ErrorTracking::BaseControlle private def render_index_json - service = ErrorTracking::ListIssuesService.new( + service = ::ErrorTracking::ListIssuesService.new( project, current_user, list_issues_params @@ -57,7 +57,7 @@ class Projects::ErrorTrackingController < Projects::ErrorTracking::BaseControlle end def render_issue_detail_json - service = ErrorTracking::IssueDetailsService.new(project, current_user, issue_details_params) + service = ::ErrorTracking::IssueDetailsService.new(project, current_user, issue_details_params) result = service.execute return if render_errors(result) @@ -91,13 +91,13 @@ class Projects::ErrorTrackingController < Projects::ErrorTracking::BaseControlle end def serialize_errors(errors) - ErrorTracking::ErrorSerializer + ::ErrorTracking::ErrorSerializer .new(project: project, user: current_user) .represent(errors) end def serialize_detailed_error(error) - ErrorTracking::DetailedErrorSerializer + ::ErrorTracking::DetailedErrorSerializer .new(project: project, user: current_user) .represent(error) end diff --git a/app/views/layouts/_head.html.haml b/app/views/layouts/_head.html.haml index 064565289d0..a89c621a55c 100644 --- a/app/views/layouts/_head.html.haml +++ b/app/views/layouts/_head.html.haml @@ -32,10 +32,6 @@ - if page_canonical_link %link{ rel: 'canonical', href: page_canonical_link } - - if user_application_theme == 'gl-dark' - = preload_link_tag(path_to_stylesheet('application_utilities_dark')) - - else - = preload_link_tag(path_to_stylesheet('application_utilities')) = yield :prefetch_asset_tags = favicon_link_tag favicon, id: 'favicon', data: { original_href: favicon }, type: 'image/png' diff --git a/app/views/layouts/_loading_hints.html.haml b/app/views/layouts/_loading_hints.html.haml index c431f05c217..e2189009045 100644 --- a/app/views/layouts/_loading_hints.html.haml +++ b/app/views/layouts/_loading_hints.html.haml @@ -1,11 +1,15 @@ = cache_if(Feature.enabled?(:cached_loading_hints, current_user), [ActionController::Base.asset_host, user_application_theme, user_color_scheme], expires_in: 1.minute) do + - css_crossorigin = ActionController::Base.asset_host ? 'anonymous' : nil + - if ActionController::Base.asset_host %link{ rel: 'dns-prefetch', href: ActionController::Base.asset_host } %link{ rel: 'preconnect', href: ActionController::Base.asset_host, crossorigin: '' } - if user_application_theme == 'gl-dark' - %link{ { rel: 'preload', href: stylesheet_url('application_dark'), as: 'style' }, ActionController::Base.asset_host ? { crossorigin: 'anonymous' } : {} } + = preload_link_tag(path_to_stylesheet('application_utilities_dark'), crossorigin: css_crossorigin) + = preload_link_tag(path_to_stylesheet('application_dark'), crossorigin: css_crossorigin) - else - %link{ { rel: 'preload', href: stylesheet_url('application'), as: 'style' }, ActionController::Base.asset_host ? { crossorigin: 'anonymous' } : {} } - %link{ { rel: 'preload', href: stylesheet_url("highlight/themes/#{user_color_scheme}"), as: 'style' }, ActionController::Base.asset_host ? { crossorigin: 'anonymous' } : {} } + = preload_link_tag(path_to_stylesheet('application_utilities'), crossorigin: css_crossorigin) + = preload_link_tag(path_to_stylesheet('application'), crossorigin: css_crossorigin) + = preload_link_tag(path_to_stylesheet("highlight/themes/#{user_color_scheme}"), crossorigin: css_crossorigin) - if Gitlab::Tracking.enabled? && Gitlab::CurrentSettings.snowplow_collector_hostname %link{ rel: 'preconnect', href: Gitlab::CurrentSettings.snowplow_collector_hostname, crossorigin: '' } diff --git a/app/workers/admin_email_worker.rb b/app/workers/admin_email_worker.rb index 4bc06b7bd0a..0877b11210d 100644 --- a/app/workers/admin_email_worker.rb +++ b/app/workers/admin_email_worker.rb @@ -5,7 +5,6 @@ class AdminEmailWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/analytics/usage_trends/count_job_trigger_worker.rb b/app/workers/analytics/usage_trends/count_job_trigger_worker.rb index d2f05a2cc2d..41ef75ac20a 100644 --- a/app/workers/analytics/usage_trends/count_job_trigger_worker.rb +++ b/app/workers/analytics/usage_trends/count_job_trigger_worker.rb @@ -8,7 +8,6 @@ module Analytics data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext DEFAULT_DELAY = 3.minutes.freeze diff --git a/app/workers/authorized_project_update/periodic_recalculate_worker.rb b/app/workers/authorized_project_update/periodic_recalculate_worker.rb index 149834d2e30..7b31224d151 100644 --- a/app/workers/authorized_project_update/periodic_recalculate_worker.rb +++ b/app/workers/authorized_project_update/periodic_recalculate_worker.rb @@ -6,7 +6,6 @@ module AuthorizedProjectUpdate data_consistency :always - sidekiq_options retry: 3 # This worker does not perform work scoped to a context include CronjobQueue # rubocop:disable Scalability/CronWorkerContext diff --git a/app/workers/ci/archive_traces_cron_worker.rb b/app/workers/ci/archive_traces_cron_worker.rb index f0dd14db56f..12856805243 100644 --- a/app/workers/ci/archive_traces_cron_worker.rb +++ b/app/workers/ci/archive_traces_cron_worker.rb @@ -6,7 +6,6 @@ module Ci data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :continuous_integration diff --git a/app/workers/ci/pipeline_artifacts/expire_artifacts_worker.rb b/app/workers/ci/pipeline_artifacts/expire_artifacts_worker.rb index a3e54c7d91b..e4dc293353b 100644 --- a/app/workers/ci/pipeline_artifacts/expire_artifacts_worker.rb +++ b/app/workers/ci/pipeline_artifacts/expire_artifacts_worker.rb @@ -7,7 +7,6 @@ module Ci data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/ci/schedule_delete_objects_cron_worker.rb b/app/workers/ci/schedule_delete_objects_cron_worker.rb index 25106151dc5..06bf83ae0a7 100644 --- a/app/workers/ci/schedule_delete_objects_cron_worker.rb +++ b/app/workers/ci/schedule_delete_objects_cron_worker.rb @@ -6,7 +6,6 @@ module Ci data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/ci_platform_metrics_update_cron_worker.rb b/app/workers/ci_platform_metrics_update_cron_worker.rb index 1b675efa16e..8de6e8a1253 100644 --- a/app/workers/ci_platform_metrics_update_cron_worker.rb +++ b/app/workers/ci_platform_metrics_update_cron_worker.rb @@ -5,8 +5,6 @@ class CiPlatformMetricsUpdateCronWorker # rubocop:disable Scalability/Idempotent data_consistency :always - sidekiq_options retry: 3 - # This worker does not perform work scoped to a context include CronjobQueue # rubocop:disable Scalability/CronWorkerContext diff --git a/app/workers/clusters/applications/check_prometheus_health_worker.rb b/app/workers/clusters/applications/check_prometheus_health_worker.rb index 994f749b0c7..4f85c5c5b7a 100644 --- a/app/workers/clusters/applications/check_prometheus_health_worker.rb +++ b/app/workers/clusters/applications/check_prometheus_health_worker.rb @@ -7,7 +7,6 @@ module Clusters data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/container_expiration_policy_worker.rb b/app/workers/container_expiration_policy_worker.rb index 38b4edd2d02..a791fe5d350 100644 --- a/app/workers/container_expiration_policy_worker.rb +++ b/app/workers/container_expiration_policy_worker.rb @@ -5,7 +5,6 @@ class ContainerExpirationPolicyWorker # rubocop:disable Scalability/IdempotentWo data_consistency :always - sidekiq_options retry: 3 include CronjobQueue include ExclusiveLeaseGuard diff --git a/app/workers/database/batched_background_migration_worker.rb b/app/workers/database/batched_background_migration_worker.rb index d791d1074b5..0750ff1acaf 100644 --- a/app/workers/database/batched_background_migration_worker.rb +++ b/app/workers/database/batched_background_migration_worker.rb @@ -6,7 +6,6 @@ module Database data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :database diff --git a/app/workers/database/partition_management_worker.rb b/app/workers/database/partition_management_worker.rb index 21a1cf8d8bd..a203c76558a 100644 --- a/app/workers/database/partition_management_worker.rb +++ b/app/workers/database/partition_management_worker.rb @@ -4,7 +4,6 @@ module Database class PartitionManagementWorker include ApplicationWorker - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext data_consistency :always diff --git a/app/workers/environments/auto_stop_cron_worker.rb b/app/workers/environments/auto_stop_cron_worker.rb index 99fb30ae692..4d6453a85e7 100644 --- a/app/workers/environments/auto_stop_cron_worker.rb +++ b/app/workers/environments/auto_stop_cron_worker.rb @@ -6,7 +6,6 @@ module Environments data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :continuous_delivery diff --git a/app/workers/expire_build_artifacts_worker.rb b/app/workers/expire_build_artifacts_worker.rb index f0dda565cf6..65d387f73ed 100644 --- a/app/workers/expire_build_artifacts_worker.rb +++ b/app/workers/expire_build_artifacts_worker.rb @@ -5,7 +5,6 @@ class ExpireBuildArtifactsWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/gitlab/import/stuck_import_job.rb b/app/workers/gitlab/import/stuck_import_job.rb index 57fb3baf2b5..a8d84f9035f 100644 --- a/app/workers/gitlab/import/stuck_import_job.rb +++ b/app/workers/gitlab/import/stuck_import_job.rb @@ -10,7 +10,6 @@ module Gitlab included do include ApplicationWorker - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker updates several import states inline and does not schedule # other jobs. So no context needed diff --git a/app/workers/import_export_project_cleanup_worker.rb b/app/workers/import_export_project_cleanup_worker.rb index 568647bd975..4cb59c424d1 100644 --- a/app/workers/import_export_project_cleanup_worker.rb +++ b/app/workers/import_export_project_cleanup_worker.rb @@ -5,7 +5,6 @@ class ImportExportProjectCleanupWorker # rubocop:disable Scalability/IdempotentW data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/issue_due_scheduler_worker.rb b/app/workers/issue_due_scheduler_worker.rb index cbb88625cdc..ad3470ae64b 100644 --- a/app/workers/issue_due_scheduler_worker.rb +++ b/app/workers/issue_due_scheduler_worker.rb @@ -5,7 +5,6 @@ class IssueDueSchedulerWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :issue_tracking diff --git a/app/workers/member_invitation_reminder_emails_worker.rb b/app/workers/member_invitation_reminder_emails_worker.rb index 2a289cba210..fa6787b9063 100644 --- a/app/workers/member_invitation_reminder_emails_worker.rb +++ b/app/workers/member_invitation_reminder_emails_worker.rb @@ -5,7 +5,6 @@ class MemberInvitationReminderEmailsWorker # rubocop:disable Scalability/Idempot data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :subgroups diff --git a/app/workers/metrics/dashboard/schedule_annotations_prune_worker.rb b/app/workers/metrics/dashboard/schedule_annotations_prune_worker.rb index fcda9b5d709..62cf35a669f 100644 --- a/app/workers/metrics/dashboard/schedule_annotations_prune_worker.rb +++ b/app/workers/metrics/dashboard/schedule_annotations_prune_worker.rb @@ -7,7 +7,6 @@ module Metrics data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/namespaces/in_product_marketing_emails_worker.rb b/app/workers/namespaces/in_product_marketing_emails_worker.rb index 630005533a0..035fa453f59 100644 --- a/app/workers/namespaces/in_product_marketing_emails_worker.rb +++ b/app/workers/namespaces/in_product_marketing_emails_worker.rb @@ -6,7 +6,6 @@ module Namespaces data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :subgroups diff --git a/app/workers/namespaces/prune_aggregation_schedules_worker.rb b/app/workers/namespaces/prune_aggregation_schedules_worker.rb index de1dd152c6b..1084edb9b50 100644 --- a/app/workers/namespaces/prune_aggregation_schedules_worker.rb +++ b/app/workers/namespaces/prune_aggregation_schedules_worker.rb @@ -6,7 +6,6 @@ module Namespaces data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :source_code_management diff --git a/app/workers/packages/composer/cache_cleanup_worker.rb b/app/workers/packages/composer/cache_cleanup_worker.rb index 5131b83822e..fee886bc750 100644 --- a/app/workers/packages/composer/cache_cleanup_worker.rb +++ b/app/workers/packages/composer/cache_cleanup_worker.rb @@ -7,7 +7,6 @@ module Packages data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :package_registry diff --git a/app/workers/pages_domain_removal_cron_worker.rb b/app/workers/pages_domain_removal_cron_worker.rb index deef6f5cf02..4744c855394 100644 --- a/app/workers/pages_domain_removal_cron_worker.rb +++ b/app/workers/pages_domain_removal_cron_worker.rb @@ -5,7 +5,6 @@ class PagesDomainRemovalCronWorker # rubocop:disable Scalability/IdempotentWorke data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :pages diff --git a/app/workers/pages_domain_ssl_renewal_cron_worker.rb b/app/workers/pages_domain_ssl_renewal_cron_worker.rb index e460ba0b440..a551078c91a 100644 --- a/app/workers/pages_domain_ssl_renewal_cron_worker.rb +++ b/app/workers/pages_domain_ssl_renewal_cron_worker.rb @@ -5,7 +5,6 @@ class PagesDomainSslRenewalCronWorker # rubocop:disable Scalability/IdempotentWo data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :pages diff --git a/app/workers/pages_domain_verification_cron_worker.rb b/app/workers/pages_domain_verification_cron_worker.rb index f647624365c..56339d50a40 100644 --- a/app/workers/pages_domain_verification_cron_worker.rb +++ b/app/workers/pages_domain_verification_cron_worker.rb @@ -5,7 +5,6 @@ class PagesDomainVerificationCronWorker # rubocop:disable Scalability/Idempotent data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :pages diff --git a/app/workers/partition_creation_worker.rb b/app/workers/partition_creation_worker.rb index 45e1a14c5bc..3f74dc3812a 100644 --- a/app/workers/partition_creation_worker.rb +++ b/app/workers/partition_creation_worker.rb @@ -5,7 +5,6 @@ class PartitionCreationWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :database diff --git a/app/workers/personal_access_tokens/expired_notification_worker.rb b/app/workers/personal_access_tokens/expired_notification_worker.rb index 57db8d4afe8..8deacf457b2 100644 --- a/app/workers/personal_access_tokens/expired_notification_worker.rb +++ b/app/workers/personal_access_tokens/expired_notification_worker.rb @@ -6,7 +6,6 @@ module PersonalAccessTokens data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :authentication_and_authorization diff --git a/app/workers/personal_access_tokens/expiring_worker.rb b/app/workers/personal_access_tokens/expiring_worker.rb index b17a5c4fba5..f4afa9f8994 100644 --- a/app/workers/personal_access_tokens/expiring_worker.rb +++ b/app/workers/personal_access_tokens/expiring_worker.rb @@ -6,7 +6,6 @@ module PersonalAccessTokens data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :authentication_and_authorization diff --git a/app/workers/pipeline_schedule_worker.rb b/app/workers/pipeline_schedule_worker.rb index b2c2cf61a58..ebda30f57d8 100644 --- a/app/workers/pipeline_schedule_worker.rb +++ b/app/workers/pipeline_schedule_worker.rb @@ -5,7 +5,6 @@ class PipelineScheduleWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :continuous_integration diff --git a/app/workers/prune_old_events_worker.rb b/app/workers/prune_old_events_worker.rb index 52256609b54..2d74c271ddc 100644 --- a/app/workers/prune_old_events_worker.rb +++ b/app/workers/prune_old_events_worker.rb @@ -5,7 +5,6 @@ class PruneOldEventsWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/releases/manage_evidence_worker.rb b/app/workers/releases/manage_evidence_worker.rb index c980cdb1473..f316aa6eefd 100644 --- a/app/workers/releases/manage_evidence_worker.rb +++ b/app/workers/releases/manage_evidence_worker.rb @@ -6,7 +6,6 @@ module Releases data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :release_evidence diff --git a/app/workers/remove_expired_group_links_worker.rb b/app/workers/remove_expired_group_links_worker.rb index bc6c0e3e329..37298c53a5c 100644 --- a/app/workers/remove_expired_group_links_worker.rb +++ b/app/workers/remove_expired_group_links_worker.rb @@ -5,7 +5,6 @@ class RemoveExpiredGroupLinksWorker # rubocop:disable Scalability/IdempotentWork data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :authentication_and_authorization diff --git a/app/workers/remove_expired_members_worker.rb b/app/workers/remove_expired_members_worker.rb index 6ff0f57a971..c9eb715a522 100644 --- a/app/workers/remove_expired_members_worker.rb +++ b/app/workers/remove_expired_members_worker.rb @@ -5,7 +5,6 @@ class RemoveExpiredMembersWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :authentication_and_authorization diff --git a/app/workers/remove_unaccepted_member_invites_worker.rb b/app/workers/remove_unaccepted_member_invites_worker.rb index 316e294e74c..7833ec30c3c 100644 --- a/app/workers/remove_unaccepted_member_invites_worker.rb +++ b/app/workers/remove_unaccepted_member_invites_worker.rb @@ -5,7 +5,6 @@ class RemoveUnacceptedMemberInvitesWorker # rubocop:disable Scalability/Idempote data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :authentication_and_authorization diff --git a/app/workers/remove_unreferenced_lfs_objects_worker.rb b/app/workers/remove_unreferenced_lfs_objects_worker.rb index a0e952b5ac0..c67ab6e356a 100644 --- a/app/workers/remove_unreferenced_lfs_objects_worker.rb +++ b/app/workers/remove_unreferenced_lfs_objects_worker.rb @@ -5,7 +5,6 @@ class RemoveUnreferencedLfsObjectsWorker data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/repository_archive_cache_worker.rb b/app/workers/repository_archive_cache_worker.rb index ab3cc7edfda..c713f54faa5 100644 --- a/app/workers/repository_archive_cache_worker.rb +++ b/app/workers/repository_archive_cache_worker.rb @@ -5,7 +5,6 @@ class RepositoryArchiveCacheWorker # rubocop:disable Scalability/IdempotentWorke data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/repository_check/dispatch_worker.rb b/app/workers/repository_check/dispatch_worker.rb index 0100baeb75e..fc41eab2c16 100644 --- a/app/workers/repository_check/dispatch_worker.rb +++ b/app/workers/repository_check/dispatch_worker.rb @@ -6,7 +6,6 @@ module RepositoryCheck data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/requests_profiles_worker.rb b/app/workers/requests_profiles_worker.rb index b50aed355a9..e02b63fb621 100644 --- a/app/workers/requests_profiles_worker.rb +++ b/app/workers/requests_profiles_worker.rb @@ -5,7 +5,6 @@ class RequestsProfilesWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/schedule_merge_request_cleanup_refs_worker.rb b/app/workers/schedule_merge_request_cleanup_refs_worker.rb index aa901ecccff..46a6e0ef01f 100644 --- a/app/workers/schedule_merge_request_cleanup_refs_worker.rb +++ b/app/workers/schedule_merge_request_cleanup_refs_worker.rb @@ -5,7 +5,6 @@ class ScheduleMergeRequestCleanupRefsWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :code_review diff --git a/app/workers/schedule_migrate_external_diffs_worker.rb b/app/workers/schedule_migrate_external_diffs_worker.rb index 2f1cdc8217b..b2dea5083b4 100644 --- a/app/workers/schedule_migrate_external_diffs_worker.rb +++ b/app/workers/schedule_migrate_external_diffs_worker.rb @@ -5,7 +5,6 @@ class ScheduleMigrateExternalDiffsWorker # rubocop:disable Scalability/Idempoten data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext: # This schedules the `MigrateExternalDiffsWorker` # issue for adding context: https://gitlab.com/gitlab-org/gitlab/issues/202100 diff --git a/app/workers/ssh_keys/expired_notification_worker.rb b/app/workers/ssh_keys/expired_notification_worker.rb index 25f810aed53..6afeecdd1b5 100644 --- a/app/workers/ssh_keys/expired_notification_worker.rb +++ b/app/workers/ssh_keys/expired_notification_worker.rb @@ -6,7 +6,6 @@ module SshKeys data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :compliance_management diff --git a/app/workers/ssh_keys/expiring_soon_notification_worker.rb b/app/workers/ssh_keys/expiring_soon_notification_worker.rb index b6999530691..ef256621e07 100644 --- a/app/workers/ssh_keys/expiring_soon_notification_worker.rb +++ b/app/workers/ssh_keys/expiring_soon_notification_worker.rb @@ -6,7 +6,6 @@ module SshKeys data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :compliance_management diff --git a/app/workers/stuck_ci_jobs_worker.rb b/app/workers/stuck_ci_jobs_worker.rb index a72fdc9487d..5723380a3f3 100644 --- a/app/workers/stuck_ci_jobs_worker.rb +++ b/app/workers/stuck_ci_jobs_worker.rb @@ -5,7 +5,6 @@ class StuckCiJobsWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :continuous_integration diff --git a/app/workers/stuck_export_jobs_worker.rb b/app/workers/stuck_export_jobs_worker.rb index 696173804f1..486d40c443a 100644 --- a/app/workers/stuck_export_jobs_worker.rb +++ b/app/workers/stuck_export_jobs_worker.rb @@ -6,7 +6,6 @@ class StuckExportJobsWorker data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker updates export states inline and does not schedule # other jobs. diff --git a/app/workers/stuck_merge_jobs_worker.rb b/app/workers/stuck_merge_jobs_worker.rb index 1a626dee392..3a650fcb7bf 100644 --- a/app/workers/stuck_merge_jobs_worker.rb +++ b/app/workers/stuck_merge_jobs_worker.rb @@ -5,7 +5,6 @@ class StuckMergeJobsWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :code_review diff --git a/app/workers/trending_projects_worker.rb b/app/workers/trending_projects_worker.rb index c1a8a88204c..73af4444d60 100644 --- a/app/workers/trending_projects_worker.rb +++ b/app/workers/trending_projects_worker.rb @@ -5,7 +5,6 @@ class TrendingProjectsWorker # rubocop:disable Scalability/IdempotentWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :source_code_management diff --git a/app/workers/update_container_registry_info_worker.rb b/app/workers/update_container_registry_info_worker.rb index 66e481bde01..d94b7ac1a72 100644 --- a/app/workers/update_container_registry_info_worker.rb +++ b/app/workers/update_container_registry_info_worker.rb @@ -5,7 +5,6 @@ class UpdateContainerRegistryInfoWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue # rubocop:disable Scalability/CronWorkerContext feature_category :container_registry diff --git a/app/workers/user_status_cleanup/batch_worker.rb b/app/workers/user_status_cleanup/batch_worker.rb index 2d90269f88c..b6ca6548572 100644 --- a/app/workers/user_status_cleanup/batch_worker.rb +++ b/app/workers/user_status_cleanup/batch_worker.rb @@ -7,7 +7,6 @@ module UserStatusCleanup data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext include CronjobQueue # rubocop:enable Scalability/CronWorkerContext diff --git a/app/workers/users/create_statistics_worker.rb b/app/workers/users/create_statistics_worker.rb index 5c35cda93a3..0c27d165ded 100644 --- a/app/workers/users/create_statistics_worker.rb +++ b/app/workers/users/create_statistics_worker.rb @@ -6,7 +6,6 @@ module Users data_consistency :always - sidekiq_options retry: 3 # rubocop:disable Scalability/CronWorkerContext # This worker does not perform work scoped to a context include CronjobQueue diff --git a/app/workers/x509_issuer_crl_check_worker.rb b/app/workers/x509_issuer_crl_check_worker.rb index d861976df94..39440504927 100644 --- a/app/workers/x509_issuer_crl_check_worker.rb +++ b/app/workers/x509_issuer_crl_check_worker.rb @@ -5,7 +5,6 @@ class X509IssuerCrlCheckWorker data_consistency :always - sidekiq_options retry: 3 include CronjobQueue feature_category :source_code_management diff --git a/db/migrate/20210719182944_add_request_response_to_supporing_message.rb b/db/migrate/20210719182944_add_request_response_to_supporing_message.rb new file mode 100644 index 00000000000..a374361e88d --- /dev/null +++ b/db/migrate/20210719182944_add_request_response_to_supporing_message.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +class AddRequestResponseToSupporingMessage < ActiveRecord::Migration[6.1] + def change + change_column_null(:vulnerability_finding_evidence_requests, :vulnerability_finding_evidence_id, true) + change_column_null(:vulnerability_finding_evidence_responses, :vulnerability_finding_evidence_id, true) + + # rubocop: disable Migration/AddReference + # Table is empty, so no need to use add_concurrent_foreign_key and add_concurrent_index + add_reference(:vulnerability_finding_evidence_requests, + :vulnerability_finding_evidence_supporting_message, + index: { name: 'finding_evidence_requests_on_supporting_evidence_id' }, + foreign_key: { on_delete: :cascade }) + add_reference(:vulnerability_finding_evidence_responses, + :vulnerability_finding_evidence_supporting_message, + index: { name: 'finding_evidence_responses_on_supporting_evidence_id' }, + foreign_key: { on_delete: :cascade }) + # rubocop:enable Migration/AddReference + end +end diff --git a/db/schema_migrations/20210719182944 b/db/schema_migrations/20210719182944 new file mode 100644 index 00000000000..37213ace8d9 --- /dev/null +++ b/db/schema_migrations/20210719182944 @@ -0,0 +1 @@ +9320dcd2a5bed122310aefd630f9c406a25b22767dba3bf118a30df044c2d6a7 \ No newline at end of file diff --git a/db/structure.sql b/db/structure.sql index dc7ab5fc539..c94c856f40d 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -19239,10 +19239,11 @@ CREATE TABLE vulnerability_finding_evidence_requests ( id bigint NOT NULL, created_at timestamp with time zone NOT NULL, updated_at timestamp with time zone NOT NULL, - vulnerability_finding_evidence_id bigint NOT NULL, + vulnerability_finding_evidence_id bigint, method text, url text, body text, + vulnerability_finding_evidence_supporting_message_id bigint, CONSTRAINT check_7e37f2d01a CHECK ((char_length(body) <= 2048)), CONSTRAINT check_8152fbb236 CHECK ((char_length(url) <= 2048)), CONSTRAINT check_d9d11300f4 CHECK ((char_length(method) <= 32)) @@ -19261,10 +19262,11 @@ CREATE TABLE vulnerability_finding_evidence_responses ( id bigint NOT NULL, created_at timestamp with time zone NOT NULL, updated_at timestamp with time zone NOT NULL, - vulnerability_finding_evidence_id bigint NOT NULL, + vulnerability_finding_evidence_id bigint, status_code integer, reason_phrase text, body text, + vulnerability_finding_evidence_supporting_message_id bigint, CONSTRAINT check_58b124ab48 CHECK ((char_length(reason_phrase) <= 2048)), CONSTRAINT check_76bac0c32b CHECK ((char_length(body) <= 2048)) ); @@ -22669,8 +22671,12 @@ CREATE INDEX finding_evidence_header_on_finding_evidence_response_id ON vulnerab CREATE INDEX finding_evidence_requests_on_finding_evidence_id ON vulnerability_finding_evidence_requests USING btree (vulnerability_finding_evidence_id); +CREATE INDEX finding_evidence_requests_on_supporting_evidence_id ON vulnerability_finding_evidence_requests USING btree (vulnerability_finding_evidence_supporting_message_id); + CREATE INDEX finding_evidence_responses_on_finding_evidences_id ON vulnerability_finding_evidence_responses USING btree (vulnerability_finding_evidence_id); +CREATE INDEX finding_evidence_responses_on_supporting_evidence_id ON vulnerability_finding_evidence_responses USING btree (vulnerability_finding_evidence_supporting_message_id); + CREATE INDEX finding_evidence_sources_on_finding_evidence_id ON vulnerability_finding_evidence_sources USING btree (vulnerability_finding_evidence_id); CREATE INDEX finding_evidence_supporting_messages_on_finding_evidence_id ON vulnerability_finding_evidence_supporting_messages USING btree (vulnerability_finding_evidence_id); @@ -27552,6 +27558,9 @@ ALTER TABLE ONLY project_error_tracking_settings ALTER TABLE ONLY list_user_preferences ADD CONSTRAINT fk_rails_916d72cafd FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE; +ALTER TABLE ONLY vulnerability_finding_evidence_responses + ADD CONSTRAINT fk_rails_929041a499 FOREIGN KEY (vulnerability_finding_evidence_supporting_message_id) REFERENCES vulnerability_finding_evidence_supporting_messages(id) ON DELETE CASCADE; + ALTER TABLE ONLY merge_request_cleanup_schedules ADD CONSTRAINT fk_rails_92dd0e705c FOREIGN KEY (merge_request_id) REFERENCES merge_requests(id) ON DELETE CASCADE; @@ -27912,6 +27921,9 @@ ALTER TABLE ONLY resource_milestone_events ALTER TABLE ONLY resource_iteration_events ADD CONSTRAINT fk_rails_cee126f66c FOREIGN KEY (iteration_id) REFERENCES sprints(id) ON DELETE CASCADE; +ALTER TABLE ONLY vulnerability_finding_evidence_requests + ADD CONSTRAINT fk_rails_cf0f278cb0 FOREIGN KEY (vulnerability_finding_evidence_supporting_message_id) REFERENCES vulnerability_finding_evidence_supporting_messages(id) ON DELETE CASCADE; + ALTER TABLE ONLY epic_metrics ADD CONSTRAINT fk_rails_d071904753 FOREIGN KEY (epic_id) REFERENCES epics(id) ON DELETE CASCADE; diff --git a/locale/gitlab.pot b/locale/gitlab.pot index 0ae5acccea0..8e893e8cf1c 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -26412,6 +26412,9 @@ msgstr "" msgid "Promotions|Audit Events is a way to keep track of important events that happened in GitLab." msgstr "" +msgid "Promotions|Better Protected Branches" +msgstr "" + msgid "Promotions|Burndown Charts are visual representations of the progress of completing a milestone. At a glance, you see the current state for the completion a given milestone. Without them, you would have to organize the data from the milestone and plot it yourself to have the same sense of progress." msgstr "" @@ -26436,6 +26439,9 @@ msgstr "" msgid "Promotions|Dismiss burndown charts promotion" msgstr "" +msgid "Promotions|Dismiss repository features promotion" +msgstr "" + msgid "Promotions|Don't show me this again" msgstr "" @@ -26451,6 +26457,9 @@ msgstr "" msgid "Promotions|Improve milestones with Burndown Charts." msgstr "" +msgid "Promotions|Improve repositories with GitLab Enterprise Edition." +msgstr "" + msgid "Promotions|Improve search with Advanced Search and GitLab Enterprise Edition." msgstr "" @@ -26463,6 +26472,18 @@ msgstr "" msgid "Promotions|Not now, thanks!" msgstr "" +msgid "Promotions|Push Rules" +msgstr "" + +msgid "Promotions|Push Rules are defined per project so you can have different rules applied to different projects depends on your needs." +msgstr "" + +msgid "Promotions|Repository Mirroring" +msgstr "" + +msgid "Promotions|Repository Mirroring is a way to mirror repositories from external sources. It can be used to mirror all branches, tags, and commits that you have in your repository." +msgstr "" + msgid "Promotions|See the other features in the %{subscription_link_start}Premium plan%{subscription_link_end}" msgstr "" @@ -26508,6 +26529,9 @@ msgstr "" msgid "Promotions|Upgrade your plan to improve milestones with Burndown Charts." msgstr "" +msgid "Promotions|Upgrade your plan to improve repositories." +msgstr "" + msgid "Promotions|Webhooks allow you to trigger a URL if, for example, new code is pushed or a new issue is created. You can configure webhooks to listen for specific events like pushes, issues or merge requests. Group webhooks will apply to all projects in a group, allowing you to standardize webhook functionality across your entire group." msgstr "" @@ -26523,6 +26547,9 @@ msgstr "" msgid "Promotions|With Contribution Analytics you can have an overview for the activity of issues, merge requests, and push events of your organization and its members." msgstr "" +msgid "Promotions|You can restrict access to protected branches by choosing a role (Maintainers, Developers) as well as certain users." +msgstr "" + msgid "Promotions|description templates" msgstr ""