diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index f3fe41bc40f..fd114bee890 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -156,11 +156,6 @@ Rails/NegateInclude: Rails/Pick: Enabled: false -# Offense count: 123 -# Cop supports --auto-correct. -Rails/Pluck: - Enabled: false - # Offense count: 39 # Cop supports --auto-correct. # Configuration parameters: Include. @@ -236,11 +231,6 @@ Style/ExplicitBlockArgument: Style/FormatString: Enabled: false -# Offense count: 897 -# Configuration parameters: MinBodyLength. -Style/GuardClause: - Enabled: false - # Offense count: 59 # Cop supports --auto-correct. # Configuration parameters: EnforcedStyle. @@ -258,11 +248,6 @@ Style/HashEachMethods: Style/IfInsideElse: Enabled: false -# Offense count: 1934 -# Cop supports --auto-correct. -Style/IfUnlessModifier: - Enabled: false - # Offense count: 64 # Cop supports --auto-correct. Style/KeywordParametersOrder: diff --git a/.rubocop_todo/rails/pluck.yml b/.rubocop_todo/rails/pluck.yml new file mode 100644 index 00000000000..608801085d4 --- /dev/null +++ b/.rubocop_todo/rails/pluck.yml @@ -0,0 +1,109 @@ +--- +# Cop supports --auto-correct. +Rails/Pluck: + # Offense count: 155 + # Temporarily disabled due to too many offenses + Enabled: false + Exclude: + - 'app/finders/merge_requests/oldest_per_commit_finder.rb' + - 'app/helpers/issuables_description_templates_helper.rb' + - 'app/models/ci/unit_test.rb' + - 'app/models/commit.rb' + - 'app/models/concerns/sensitive_serializable_hash.rb' + - 'app/models/integrations/chat_message/pipeline_message.rb' + - 'app/models/list.rb' + - 'app/services/ci/pipeline_processing/atomic_processing_service/status_collection.rb' + - 'app/services/feature_flags/update_service.rb' + - 'app/services/pod_logs/base_service.rb' + - 'app/services/prometheus/create_default_alerts_service.rb' + - 'ee/app/graphql/mutations/incident_management/oncall_rotation/base.rb' + - 'ee/app/models/boards/epic_list.rb' + - 'ee/app/models/vulnerabilities/finding.rb' + - 'ee/app/services/concerns/incident_management/oncall_rotations/shared_rotation_logic.rb' + - 'ee/app/workers/geo/container_repository_sync_dispatch_worker.rb' + - 'ee/app/workers/geo/file_download_dispatch_worker.rb' + - 'ee/app/workers/geo/registry_sync_worker.rb' + - 'ee/app/workers/geo/repository_shard_sync_worker.rb' + - 'ee/app/workers/geo/repository_verification/secondary/shard_worker.rb' + - 'ee/app/workers/geo/scheduler/scheduler_worker.rb' + - 'ee/lib/ee/banzai/filter/references/iteration_reference_filter.rb' + - 'ee/lib/ee/gitlab/auth/ldap/person.rb' + - 'ee/lib/ee/gitlab/background_migration/populate_uuids_for_security_findings.rb' + - 'ee/lib/ee/gitlab/checks/push_rules/file_size_check.rb' + - 'ee/lib/gitlab/ci/reports/license_scanning/report.rb' + - 'ee/spec/controllers/groups/audit_events_controller_spec.rb' + - 'ee/spec/controllers/projects/audit_events_controller_spec.rb' + - 'ee/spec/helpers/ee/geo_helper_spec.rb' + - 'ee/spec/lib/gitlab/custom_file_templates_spec.rb' + - 'ee/spec/lib/gitlab/spdx/catalogue_spec.rb' + - 'ee/spec/models/analytics/cycle_analytics/group_level_spec.rb' + - 'ee/spec/models/dast_site_profile_spec.rb' + - 'ee/spec/models/integrations/chat_message/vulnerability_message_spec.rb' + - 'ee/spec/requests/api/graphql/mutations/releases/create_spec.rb' + - 'ee/spec/requests/api/graphql/mutations/releases/update_spec.rb' + - 'ee/spec/services/analytics/cycle_analytics/stages/update_service_spec.rb' + - 'ee/spec/services/analytics/cycle_analytics/value_streams/create_service_spec.rb' + - 'ee/spec/services/analytics/cycle_analytics/value_streams/update_service_spec.rb' + - 'ee/spec/services/ee/groups/autocomplete_service_spec.rb' + - 'ee/spec/services/quick_actions/interpret_service_spec.rb' + - 'lib/banzai/filter/references/label_reference_filter.rb' + - 'lib/banzai/filter/references/milestone_reference_filter.rb' + - 'lib/banzai/renderer.rb' + - 'lib/gitlab/access.rb' + - 'lib/gitlab/analytics/cycle_analytics/default_stages.rb' + - 'lib/gitlab/checks/lfs_check.rb' + - 'lib/gitlab/ci/pipeline/chain/build/associations.rb' + - 'lib/gitlab/ci/pipeline/chain/validate/external.rb' + - 'lib/gitlab/ci/variables/collection/sort.rb' + - 'lib/gitlab/config/entry/validators.rb' + - 'lib/gitlab/git_access.rb' + - 'lib/gitlab/metrics/dashboard/importers/prometheus_metrics.rb' + - 'lib/gitlab/metrics/dashboard/stages/custom_metrics_details_inserter.rb' + - 'lib/gitlab/sidekiq_config/cli_methods.rb' + - 'lib/gitlab/usage/metrics/name_suggestion.rb' + - 'lib/gitlab/usage_data_counters/hll_redis_counter.rb' + - 'qa/qa/specs/features/browser_ui/3_create/jira/jira_basic_integration_spec.rb' + - 'qa/qa/support/page_error_checker.rb' + - 'scripts/perf/query_limiting_report.rb' + - 'spec/config/mail_room_spec.rb' + - 'spec/config/metrics/aggregates/aggregated_metrics_spec.rb' + - 'spec/finders/license_template_finder_spec.rb' + - 'spec/graphql/resolvers/ci/test_suite_resolver_spec.rb' + - 'spec/helpers/groups/group_members_helper_spec.rb' + - 'spec/lib/atlassian/jira_connect/serializers/pull_request_entity_spec.rb' + - 'spec/lib/banzai/reference_redactor_spec.rb' + - 'spec/lib/gitlab/ci/ansi2json/line_spec.rb' + - 'spec/lib/gitlab/ci/yaml_processor_spec.rb' + - 'spec/lib/gitlab/conflict/file_spec.rb' + - 'spec/lib/gitlab/git/blame_spec.rb' + - 'spec/lib/gitlab/git/conflict/parser_spec.rb' + - 'spec/lib/gitlab/language_detection_spec.rb' + - 'spec/lib/gitlab/lograge/custom_options_spec.rb' + - 'spec/lib/gitlab/metrics/dashboard/processor_spec.rb' + - 'spec/lib/gitlab/phabricator_import/conduit/tasks_response_spec.rb' + - 'spec/lib/gitlab/relative_positioning/item_context_spec.rb' + - 'spec/lib/gitlab/search/query_spec.rb' + - 'spec/lib/gitlab/sidekiq_config/worker_matcher_spec.rb' + - 'spec/lib/gitlab/tree_summary_spec.rb' + - 'spec/lib/peek/views/rugged_spec.rb' + - 'spec/migrations/20210713042000_fix_ci_sources_pipelines_index_names_spec.rb' + - 'spec/models/ci/bridge_spec.rb' + - 'spec/models/ci/build_spec.rb' + - 'spec/models/ci/pipeline_spec.rb' + - 'spec/models/clusters/platforms/kubernetes_spec.rb' + - 'spec/models/instance_configuration_spec.rb' + - 'spec/models/integrations/chat_message/alert_message_spec.rb' + - 'spec/models/integrations/jira_spec.rb' + - 'spec/models/project_auto_devops_spec.rb' + - 'spec/models/project_spec.rb' + - 'spec/presenters/packages/detail/package_presenter_spec.rb' + - 'spec/presenters/packages/nuget/service_index_presenter_spec.rb' + - 'spec/serializers/ci/dag_pipeline_entity_spec.rb' + - 'spec/serializers/ci/pipeline_entity_spec.rb' + - 'spec/serializers/diff_file_entity_spec.rb' + - 'spec/serializers/stage_entity_spec.rb' + - 'spec/services/ci/pipeline_processing/atomic_processing_service/status_collection_spec.rb' + - 'spec/services/metrics/dashboard/custom_metric_embed_service_spec.rb' + - 'spec/services/projects/participants_service_spec.rb' + - 'spec/support/shared_contexts/markdown_golden_master_shared_examples.rb' + - 'tooling/danger/sidekiq_queues.rb' diff --git a/.rubocop_todo/style/guard_clause.yml b/.rubocop_todo/style/guard_clause.yml new file mode 100644 index 00000000000..12eda8abf13 --- /dev/null +++ b/.rubocop_todo/style/guard_clause.yml @@ -0,0 +1,719 @@ +--- +Style/GuardClause: + # Offense count: 1014 + # Temporarily disabled due to too many offenses + Enabled: false + Exclude: + - 'app/controllers/admin/users_controller.rb' + - 'app/controllers/application_controller.rb' + - 'app/controllers/chaos_controller.rb' + - 'app/controllers/clusters/clusters_controller.rb' + - 'app/controllers/concerns/accepts_pending_invitations.rb' + - 'app/controllers/concerns/authenticates_with_two_factor.rb' + - 'app/controllers/concerns/controller_with_cross_project_access_check.rb' + - 'app/controllers/concerns/creates_commit.rb' + - 'app/controllers/concerns/cycle_analytics_params.rb' + - 'app/controllers/concerns/enforces_admin_authentication.rb' + - 'app/controllers/concerns/enforces_two_factor_authentication.rb' + - 'app/controllers/concerns/impersonation.rb' + - 'app/controllers/concerns/issuable_actions.rb' + - 'app/controllers/concerns/issuable_collections.rb' + - 'app/controllers/concerns/oauth_applications.rb' + - 'app/controllers/concerns/page_limiter.rb' + - 'app/controllers/concerns/product_analytics_tracking.rb' + - 'app/controllers/concerns/record_user_last_activity.rb' + - 'app/controllers/concerns/routable_actions.rb' + - 'app/controllers/concerns/snippets/blobs_actions.rb' + - 'app/controllers/concerns/uploads_actions.rb' + - 'app/controllers/dashboard/todos_controller.rb' + - 'app/controllers/groups/application_controller.rb' + - 'app/controllers/groups_controller.rb' + - 'app/controllers/import/gitea_controller.rb' + - 'app/controllers/import/github_controller.rb' + - 'app/controllers/import/gitlab_controller.rb' + - 'app/controllers/import/manifest_controller.rb' + - 'app/controllers/omniauth_callbacks_controller.rb' + - 'app/controllers/passwords_controller.rb' + - 'app/controllers/profiles/two_factor_auths_controller.rb' + - 'app/controllers/projects/application_controller.rb' + - 'app/controllers/projects/blob_controller.rb' + - 'app/controllers/projects/branches_controller.rb' + - 'app/controllers/projects/commit_controller.rb' + - 'app/controllers/projects/compare_controller.rb' + - 'app/controllers/projects/design_management/designs/resized_image_controller.rb' + - 'app/controllers/projects/design_management/designs_controller.rb' + - 'app/controllers/projects/error_tracking_controller.rb' + - 'app/controllers/projects/google_cloud/base_controller.rb' + - 'app/controllers/projects/imports_controller.rb' + - 'app/controllers/projects/issues_controller.rb' + - 'app/controllers/projects/repositories_controller.rb' + - 'app/controllers/projects/settings/operations_controller.rb' + - 'app/controllers/projects/tree_controller.rb' + - 'app/controllers/registrations_controller.rb' + - 'app/controllers/repositories/git_http_controller.rb' + - 'app/controllers/repositories/lfs_api_controller.rb' + - 'app/controllers/search_controller.rb' + - 'app/controllers/sessions_controller.rb' + - 'app/controllers/users/terms_controller.rb' + - 'app/finders/award_emojis_finder.rb' + - 'app/finders/ci/auth_job_finder.rb' + - 'app/finders/ci/runners_finder.rb' + - 'app/finders/deployments_finder.rb' + - 'app/finders/group_members_finder.rb' + - 'app/finders/projects/serverless/functions_finder.rb' + - 'app/finders/snippets_finder.rb' + - 'app/graphql/mutations/concerns/mutations/spam_protection.rb' + - 'app/graphql/mutations/design_management/delete.rb' + - 'app/graphql/mutations/notes/create/note.rb' + - 'app/graphql/mutations/notes/reposition_image_diff_note.rb' + - 'app/graphql/resolvers/blobs_resolver.rb' + - 'app/graphql/resolvers/board_list_issues_resolver.rb' + - 'app/graphql/resolvers/concerns/board_item_filterable.rb' + - 'app/graphql/resolvers/concerns/issue_resolver_arguments.rb' + - 'app/graphql/resolvers/concerns/time_frame_arguments.rb' + - 'app/graphql/resolvers/projects/jira_projects_resolver.rb' + - 'app/graphql/types/ci/job_type.rb' + - 'app/graphql/types/concerns/find_closest.rb' + - 'app/helpers/admin/user_actions_helper.rb' + - 'app/helpers/appearances_helper.rb' + - 'app/helpers/application_helper.rb' + - 'app/helpers/events_helper.rb' + - 'app/helpers/issues_helper.rb' + - 'app/helpers/nav/top_nav_helper.rb' + - 'app/helpers/notes_helper.rb' + - 'app/helpers/preferences_helper.rb' + - 'app/helpers/profiles_helper.rb' + - 'app/helpers/snippets_helper.rb' + - 'app/helpers/tree_helper.rb' + - 'app/helpers/visibility_level_helper.rb' + - 'app/mailers/emails/notes.rb' + - 'app/models/alert_management/http_integration.rb' + - 'app/models/appearance.rb' + - 'app/models/application_setting.rb' + - 'app/models/bulk_imports/entity.rb' + - 'app/models/ci/build.rb' + - 'app/models/ci/build_trace.rb' + - 'app/models/ci/job_artifact.rb' + - 'app/models/ci/job_token/project_scope_link.rb' + - 'app/models/ci/pipeline.rb' + - 'app/models/ci/runner.rb' + - 'app/models/clusters/cluster.rb' + - 'app/models/clusters/platforms/kubernetes.rb' + - 'app/models/commit_range.rb' + - 'app/models/concerns/analytics/cycle_analytics/stage.rb' + - 'app/models/concerns/avatarable.rb' + - 'app/models/concerns/bulk_insert_safe.rb' + - 'app/models/concerns/cache_markdown_field.rb' + - 'app/models/concerns/cacheable_attributes.rb' + - 'app/models/concerns/counter_attribute.rb' + - 'app/models/concerns/deprecated_assignee.rb' + - 'app/models/concerns/has_wiki_page_meta_attributes.rb' + - 'app/models/concerns/issuable.rb' + - 'app/models/concerns/issuable_link.rb' + - 'app/models/concerns/metric_image_uploading.rb' + - 'app/models/concerns/milestoneish.rb' + - 'app/models/concerns/packages/debian/distribution_key.rb' + - 'app/models/concerns/time_trackable.rb' + - 'app/models/concerns/timebox.rb' + - 'app/models/concerns/token_authenticatable_strategies/base.rb' + - 'app/models/concerns/token_authenticatable_strategies/encrypted.rb' + - 'app/models/custom_emoji.rb' + - 'app/models/description_version.rb' + - 'app/models/design_management/design.rb' + - 'app/models/design_management/design_collection.rb' + - 'app/models/diff_viewer/base.rb' + - 'app/models/environment.rb' + - 'app/models/error_tracking/error_event.rb' + - 'app/models/error_tracking/project_error_tracking_setting.rb' + - 'app/models/experiment_subject.rb' + - 'app/models/external_pull_request.rb' + - 'app/models/generic_commit_status.rb' + - 'app/models/integrations/bamboo.rb' + - 'app/models/integrations/base_issue_tracker.rb' + - 'app/models/integrations/base_third_party_wiki.rb' + - 'app/models/integrations/confluence.rb' + - 'app/models/integrations/datadog.rb' + - 'app/models/integrations/emails_on_push.rb' + - 'app/models/integrations/harbor.rb' + - 'app/models/integrations/irker.rb' + - 'app/models/integrations/jenkins.rb' + - 'app/models/integrations/jira.rb' + - 'app/models/integrations/pipelines_email.rb' + - 'app/models/integrations/teamcity.rb' + - 'app/models/internal_id.rb' + - 'app/models/issue.rb' + - 'app/models/member.rb' + - 'app/models/members/project_member.rb' + - 'app/models/merge_request.rb' + - 'app/models/merge_request_assignee.rb' + - 'app/models/merge_request_reviewer.rb' + - 'app/models/namespace.rb' + - 'app/models/namespace_setting.rb' + - 'app/models/operations/feature_flags/strategy.rb' + - 'app/models/operations/feature_flags/user_list.rb' + - 'app/models/packages/conan/file_metadatum.rb' + - 'app/models/packages/conan/metadatum.rb' + - 'app/models/packages/maven/metadatum.rb' + - 'app/models/packages/package.rb' + - 'app/models/packages/pypi/metadatum.rb' + - 'app/models/packages/rubygems/metadatum.rb' + - 'app/models/pages_domain.rb' + - 'app/models/personal_access_token.rb' + - 'app/models/project.rb' + - 'app/models/project_group_link.rb' + - 'app/models/project_import_state.rb' + - 'app/models/project_label.rb' + - 'app/models/project_setting.rb' + - 'app/models/protected_branch/push_access_level.rb' + - 'app/models/repository.rb' + - 'app/models/sent_notification.rb' + - 'app/models/sentry_issue.rb' + - 'app/models/service_desk_setting.rb' + - 'app/models/snippet_input_action.rb' + - 'app/models/user.rb' + - 'app/models/users/in_product_marketing_email.rb' + - 'app/models/wiki.rb' + - 'app/presenters/ci/pipeline_presenter.rb' + - 'app/presenters/merge_request_presenter.rb' + - 'app/presenters/project_presenter.rb' + - 'app/services/boards/issues/list_service.rb' + - 'app/services/bulk_imports/file_download_service.rb' + - 'app/services/ci/create_web_ide_terminal_service.rb' + - 'app/services/ci/daily_build_group_report_result_service.rb' + - 'app/services/ci/parse_dotenv_artifact_service.rb' + - 'app/services/ci/pipelines/add_job_service.rb' + - 'app/services/ci/play_build_service.rb' + - 'app/services/ci/retry_job_service.rb' + - 'app/services/ci/update_build_queue_service.rb' + - 'app/services/clusters/agent_tokens/track_usage_service.rb' + - 'app/services/clusters/aws/fetch_credentials_service.rb' + - 'app/services/commits/commit_patch_service.rb' + - 'app/services/commits/create_service.rb' + - 'app/services/concerns/ci/job_token_scope/edit_scope_validations.rb' + - 'app/services/concerns/rate_limited_service.rb' + - 'app/services/concerns/update_repository_storage_methods.rb' + - 'app/services/concerns/validates_classification_label.rb' + - 'app/services/deployments/update_environment_service.rb' + - 'app/services/draft_notes/destroy_service.rb' + - 'app/services/files/delete_service.rb' + - 'app/services/files/multi_service.rb' + - 'app/services/files/update_service.rb' + - 'app/services/git/branch_hooks_service.rb' + - 'app/services/groups/group_links/update_service.rb' + - 'app/services/groups/import_export/export_service.rb' + - 'app/services/groups/transfer_service.rb' + - 'app/services/groups/update_service.rb' + - 'app/services/groups/update_shared_runners_service.rb' + - 'app/services/ide/base_config_service.rb' + - 'app/services/import/gitlab_projects/file_acquisition_strategies/remote_file.rb' + - 'app/services/import/validate_remote_git_endpoint_service.rb' + - 'app/services/issuable/bulk_update_service.rb' + - 'app/services/issuable/clone/base_service.rb' + - 'app/services/issuable/common_system_notes_service.rb' + - 'app/services/issuable_base_service.rb' + - 'app/services/issues/clone_service.rb' + - 'app/services/issues/move_service.rb' + - 'app/services/issues/update_service.rb' + - 'app/services/merge_requests/add_spent_time_service.rb' + - 'app/services/merge_requests/base_service.rb' + - 'app/services/merge_requests/build_service.rb' + - 'app/services/merge_requests/handle_assignees_change_service.rb' + - 'app/services/merge_requests/merge_base_service.rb' + - 'app/services/merge_requests/merge_service.rb' + - 'app/services/merge_requests/mergeability_check_service.rb' + - 'app/services/merge_requests/outdated_discussion_diff_lines_service.rb' + - 'app/services/merge_requests/push_options_handler_service.rb' + - 'app/services/merge_requests/refresh_service.rb' + - 'app/services/metrics/dashboard/base_service.rb' + - 'app/services/namespace_settings/update_service.rb' + - 'app/services/notes/create_service.rb' + - 'app/services/notes/post_process_service.rb' + - 'app/services/notification_recipients/builder/default.rb' + - 'app/services/notification_service.rb' + - 'app/services/packages/create_event_service.rb' + - 'app/services/packages/create_package_service.rb' + - 'app/services/packages/nuget/search_service.rb' + - 'app/services/post_receive_service.rb' + - 'app/services/projects/after_rename_service.rb' + - 'app/services/projects/create_service.rb' + - 'app/services/projects/destroy_rollback_service.rb' + - 'app/services/projects/destroy_service.rb' + - 'app/services/projects/hashed_storage/rollback_service.rb' + - 'app/services/projects/import_export/export_service.rb' + - 'app/services/projects/import_service.rb' + - 'app/services/projects/lfs_pointers/lfs_object_download_list_service.rb' + - 'app/services/projects/update_pages_service.rb' + - 'app/services/projects/update_repository_storage_service.rb' + - 'app/services/projects/update_service.rb' + - 'app/services/protected_branches/legacy_api_update_service.rb' + - 'app/services/snippets/repository_validation_service.rb' + - 'app/services/static_site_editor/config_service.rb' + - 'app/services/todo_service.rb' + - 'app/services/users/build_service.rb' + - 'app/services/users/update_service.rb' + - 'app/services/wiki_pages/update_service.rb' + - 'app/services/wikis/create_attachment_service.rb' + - 'app/uploaders/content_type_whitelist.rb' + - 'app/uploaders/file_mover.rb' + - 'app/uploaders/file_uploader.rb' + - 'app/validators/abstract_path_validator.rb' + - 'app/validators/any_field_validator.rb' + - 'app/validators/array_members_validator.rb' + - 'app/validators/branch_filter_validator.rb' + - 'app/validators/certificate_fingerprint_validator.rb' + - 'app/validators/certificate_key_validator.rb' + - 'app/validators/certificate_validator.rb' + - 'app/validators/cron_validator.rb' + - 'app/validators/feature_flag_strategies_validator.rb' + - 'app/validators/feature_flag_user_xids_validator.rb' + - 'app/validators/json_schema_validator.rb' + - 'app/validators/key_restriction_validator.rb' + - 'app/validators/line_code_validator.rb' + - 'app/validators/named_ecdsa_key_validator.rb' + - 'app/validators/rsa_key_validator.rb' + - 'app/validators/top_level_group_validator.rb' + - 'app/validators/x509_certificate_credentials_validator.rb' + - 'app/workers/cleanup_container_repository_worker.rb' + - 'app/workers/clusters/agents/delete_expired_events_worker.rb' + - 'app/workers/concerns/application_worker.rb' + - 'app/workers/container_registry/migration/guard_worker.rb' + - 'app/workers/deployments/hooks_worker.rb' + - 'app/workers/deployments/link_merge_request_worker.rb' + - 'app/workers/gitlab/github_import/refresh_import_jid_worker.rb' + - 'app/workers/packages/maven/metadata/sync_worker.rb' + - 'app/workers/repository_update_remote_mirror_worker.rb' + - 'config/initializers/0_inject_enterprise_edition_module.rb' + - 'config/initializers/carrierwave_patch.rb' + - 'config/initializers/devise_dynamic_password_length_validation.rb' + - 'config/initializers/google_api_client_patch.rb' + - 'config/initializers/postgresql_cte.rb' + - 'config/object_store_settings.rb' + - 'danger/feature_flag/Dangerfile' + - 'db/migrate/20210302212623_rename_vuln_fingerprints_indexes.rb' + - 'db/migrate/20210707095545_add_status_to_merge_request_cleanup_schedules.rb' + - 'db/migrate/20210816095826_add_unique_index_on_dast_profile_to_dast_profile_schedules.rb' + - 'db/migrate/20210816192041_add_invites_email_success_to_member.rb' + - 'db/migrate/20210818061156_remove_project_profile_compound_index_from_dast_profile_schedules.rb' + - 'db/migrate/20210830140524_add_state_to_member.rb' + - 'db/migrate/20211202094944_move_loose_fk_deleted_records_to_dynamic_schema.rb' + - 'db/migrate/20220215164709_update_application_settings_container_registry_exp_pol_worker_capacity_default.rb' + - 'db/post_migrate/20210713042000_fix_ci_sources_pipelines_index_names.rb' + - 'db/post_migrate/20210805192450_update_trial_plans_ci_daily_pipeline_schedule_triggers.rb' + - 'db/post_migrate/20210907211557_finalize_ci_builds_bigint_conversion.rb' + - 'ee/app/controllers/admin/emails_controller.rb' + - 'ee/app/controllers/admin/geo/application_controller.rb' + - 'ee/app/controllers/admin/geo/replicables_controller.rb' + - 'ee/app/controllers/admin/geo/settings_controller.rb' + - 'ee/app/controllers/concerns/audit_events/enforces_valid_date_params.rb' + - 'ee/app/controllers/concerns/ee/membership_actions.rb' + - 'ee/app/controllers/ee/groups/group_members_controller.rb' + - 'ee/app/controllers/ee/groups_controller.rb' + - 'ee/app/controllers/ee/registrations_controller.rb' + - 'ee/app/controllers/groups/analytics/productivity_analytics_controller.rb' + - 'ee/app/controllers/groups/billings_controller.rb' + - 'ee/app/controllers/profiles/billings_controller.rb' + - 'ee/app/controllers/projects/path_locks_controller.rb' + - 'ee/app/controllers/projects/security/policies_controller.rb' + - 'ee/app/controllers/projects/settings/slacks_controller.rb' + - 'ee/app/controllers/smartcard_controller.rb' + - 'ee/app/finders/ee/notes_finder.rb' + - 'ee/app/finders/ee/template_finder.rb' + - 'ee/app/finders/iterations_finder.rb' + - 'ee/app/finders/security/vulnerabilities_finder.rb' + - 'ee/app/graphql/mutations/iterations/create.rb' + - 'ee/app/graphql/mutations/iterations/update.rb' + - 'ee/app/graphql/mutations/projects/set_locked.rb' + - 'ee/app/graphql/resolvers/analytics/devops_adoption/enabled_namespaces_resolver.rb' + - 'ee/app/graphql/resolvers/epics_resolver.rb' + - 'ee/app/graphql/resolvers/iterations_resolver.rb' + - 'ee/app/helpers/ee/application_helper.rb' + - 'ee/app/helpers/ee/award_emoji_helper.rb' + - 'ee/app/helpers/ee/nav/new_dropdown_helper.rb' + - 'ee/app/helpers/ee/nav/top_nav_helper.rb' + - 'ee/app/helpers/ee/projects_helper.rb' + - 'ee/app/models/allowed_email_domain.rb' + - 'ee/app/models/app_sec/fuzzing/coverage/corpus.rb' + - 'ee/app/models/approval_merge_request_rule_source.rb' + - 'ee/app/models/concerns/app_sec/dast/buildable.rb' + - 'ee/app/models/concerns/ee/protected_ref_access.rb' + - 'ee/app/models/concerns/elastic/application_versioned_search.rb' + - 'ee/app/models/concerns/geo/verifiable_replicator.rb' + - 'ee/app/models/dast/profile.rb' + - 'ee/app/models/dast_site.rb' + - 'ee/app/models/dast_site_profile.rb' + - 'ee/app/models/ee/application_setting.rb' + - 'ee/app/models/ee/epic.rb' + - 'ee/app/models/ee/group_member.rb' + - 'ee/app/models/ee/incident_management/issuable_escalation_status.rb' + - 'ee/app/models/ee/issue.rb' + - 'ee/app/models/ee/issue_assignee.rb' + - 'ee/app/models/ee/iteration.rb' + - 'ee/app/models/ee/member.rb' + - 'ee/app/models/ee/merge_request.rb' + - 'ee/app/models/ee/namespace.rb' + - 'ee/app/models/ee/project.rb' + - 'ee/app/models/ee/project_member.rb' + - 'ee/app/models/ee/user.rb' + - 'ee/app/models/elasticsearch_indexed_project.rb' + - 'ee/app/models/epic/related_epic_link.rb' + - 'ee/app/models/epic_issue.rb' + - 'ee/app/models/geo_node.rb' + - 'ee/app/models/geo_node_status.rb' + - 'ee/app/models/incident_management/escalation_rule.rb' + - 'ee/app/models/incident_management/oncall_rotation.rb' + - 'ee/app/models/ip_restriction.rb' + - 'ee/app/models/iterations/cadence.rb' + - 'ee/app/models/namespace_limit.rb' + - 'ee/app/models/preloaders/environments/protected_environment_preloader.rb' + - 'ee/app/models/protected_environment.rb' + - 'ee/app/models/users_security_dashboard_project.rb' + - 'ee/app/models/vulnerabilities/feedback.rb' + - 'ee/app/presenters/ee/merge_request_presenter.rb' + - 'ee/app/services/analytics/cycle_analytics/validations.rb' + - 'ee/app/services/analytics/cycle_analytics/value_streams/create_service.rb' + - 'ee/app/services/analytics/devops_adoption/enabled_namespaces/common_methods.rb' + - 'ee/app/services/app_sec/dast/profiles/create_service.rb' + - 'ee/app/services/app_sec/dast/profiles/update_service.rb' + - 'ee/app/services/approval_rules/create_service.rb' + - 'ee/app/services/approval_rules/params_filtering_service.rb' + - 'ee/app/services/approval_rules/update_service.rb' + - 'ee/app/services/billable_members/destroy_service.rb' + - 'ee/app/services/ci/minutes/update_project_and_namespace_usage_service.rb' + - 'ee/app/services/dora/aggregate_metrics_service.rb' + - 'ee/app/services/ee/alert_management/alerts/update_service.rb' + - 'ee/app/services/ee/audit_event_service.rb' + - 'ee/app/services/ee/ci/play_bridge_service.rb' + - 'ee/app/services/ee/ci/play_build_service.rb' + - 'ee/app/services/ee/ci/retry_job_service.rb' + - 'ee/app/services/ee/commits/create_service.rb' + - 'ee/app/services/ee/groups/update_service.rb' + - 'ee/app/services/ee/issuable/common_system_notes_service.rb' + - 'ee/app/services/ee/issues/base_service.rb' + - 'ee/app/services/ee/merge_requests/merge_base_service.rb' + - 'ee/app/services/ee/merge_requests/post_merge_service.rb' + - 'ee/app/services/ee/merge_requests/refresh_service.rb' + - 'ee/app/services/ee/namespace_settings/update_service.rb' + - 'ee/app/services/ee/projects/create_service.rb' + - 'ee/app/services/ee/projects/gitlab_projects_import_service.rb' + - 'ee/app/services/ee/projects/update_service.rb' + - 'ee/app/services/ee/protected_branches/loggable.rb' + - 'ee/app/services/ee/wiki_pages/base_service.rb' + - 'ee/app/services/epics/close_service.rb' + - 'ee/app/services/epics/create_service.rb' + - 'ee/app/services/epics/reopen_service.rb' + - 'ee/app/services/epics/tree_reorder_service.rb' + - 'ee/app/services/epics/update_service.rb' + - 'ee/app/services/geo/framework_repository_sync_service.rb' + - 'ee/app/services/geo/metrics_update_service.rb' + - 'ee/app/services/geo/repository_base_sync_service.rb' + - 'ee/app/services/group_saml/group_managed_accounts/transfer_membership_service.rb' + - 'ee/app/services/groups/update_repository_storage_service.rb' + - 'ee/app/services/incident_management/oncall_rotations/remove_participant_service.rb' + - 'ee/app/services/iterations/delete_service.rb' + - 'ee/app/services/merge_trains/check_status_service.rb' + - 'ee/app/services/merge_trains/refresh_merge_request_service.rb' + - 'ee/app/services/merge_trains/refresh_service.rb' + - 'ee/app/services/namespaces/storage/email_notification_service.rb' + - 'ee/app/services/projects/slack_application_install_service.rb' + - 'ee/app/services/projects/update_mirror_service.rb' + - 'ee/app/services/security/override_uuids_service.rb' + - 'ee/app/services/timebox_report_service.rb' + - 'ee/app/validators/host_validator.rb' + - 'ee/app/workers/ee/ci/build_finished_worker.rb' + - 'ee/app/workers/ee/post_receive.rb' + - 'ee/app/workers/elastic/migration_worker.rb' + - 'ee/app/workers/elastic_namespace_rollout_worker.rb' + - 'ee/app/workers/epics/new_epic_issue_worker.rb' + - 'ee/app/workers/geo/scheduler/scheduler_worker.rb' + - 'ee/app/workers/scan_security_report_secrets_worker.rb' + - 'ee/app/workers/sync_seat_link_request_worker.rb' + - 'ee/db/geo/migrate/20180314175612_add_partial_index_to_project_registy_verification_failure_columns.rb' + - 'ee/db/geo/migrate/20180315222132_add_partial_index_to_project_registy_checksum_columns.rb' + - 'ee/db/geo/migrate/20180412213305_add_index_to_artifact_id_on_job_artifact_registry.rb' + - 'ee/lib/ee/api/ci/job_artifacts.rb' + - 'ee/lib/ee/api/features.rb' + - 'ee/lib/ee/api/helpers/projects_helpers.rb' + - 'ee/lib/ee/api/projects.rb' + - 'ee/lib/ee/api/search.rb' + - 'ee/lib/ee/audit/project_ci_cd_setting_changes_auditor.rb' + - 'ee/lib/ee/gitlab/auth/ldap/access.rb' + - 'ee/lib/ee/gitlab/auth/ldap/sync/group.rb' + - 'ee/lib/ee/gitlab/auth/o_auth/user.rb' + - 'ee/lib/ee/gitlab/background_migration/migrate_approver_to_approval_rules_check_progress.rb' + - 'ee/lib/ee/gitlab/checks/push_rules/commit_check.rb' + - 'ee/lib/ee/gitlab/cleanup/orphan_job_artifact_files.rb' + - 'ee/lib/ee/gitlab/git_access.rb' + - 'ee/lib/ee/gitlab/gon_helper.rb' + - 'ee/lib/ee/gitlab/omniauth_initializer.rb' + - 'ee/lib/ee/sidebars/projects/panel.rb' + - 'ee/lib/elastic/latest/application_class_proxy.rb' + - 'ee/lib/gitlab/analytics/cycle_analytics/summary/base_time.rb' + - 'ee/lib/gitlab/ci/config/security_orchestration_policies/processor.rb' + - 'ee/lib/gitlab/ci/minutes/cost_factor.rb' + - 'ee/lib/gitlab/compliance_management/violations/approved_by_insufficient_users.rb' + - 'ee/lib/gitlab/compliance_management/violations/approved_by_merge_request_author.rb' + - 'ee/lib/gitlab/geo/geo_node_status_check.rb' + - 'ee/lib/gitlab/geo/git_push_http.rb' + - 'ee/lib/gitlab/geo/log_cursor/daemon.rb' + - 'ee/lib/gitlab/geo/oauth/logout_token.rb' + - 'ee/lib/gitlab/geo/replicator.rb' + - 'ee/lib/gitlab/graphql/aggregations/epics/lazy_epic_aggregate.rb' + - 'ee/lib/gitlab/insights/project_insights_config.rb' + - 'ee/lib/gitlab/insights/reducers/count_per_label_reducer.rb' + - 'ee/lib/gitlab/insights/reducers/count_per_period_reducer.rb' + - 'ee/lib/gitlab/insights/serializers/chartjs/bar_serializer.rb' + - 'ee/lib/gitlab/insights/serializers/chartjs/multi_series_serializer.rb' + - 'ee/lib/gitlab/insights/validators/params_validator.rb' + - 'ee/lib/omni_auth/strategies/group_saml.rb' + - 'ee/lib/pseudonymizer/dumper.rb' + - 'ee/spec/features/billings/billing_plans_spec.rb' + - 'ee/spec/lib/ee/gitlab/background_migration/migrate_approver_to_approval_rules_spec.rb' + - 'ee/spec/workers/update_max_seats_used_for_gitlab_com_subscriptions_worker_spec.rb' + - 'haml_lint/linter/documentation_links.rb' + - 'lib/api/commits.rb' + - 'lib/api/error_tracking/collector.rb' + - 'lib/api/feature_flags.rb' + - 'lib/api/helpers.rb' + - 'lib/api/helpers/packages/conan/api_helpers.rb' + - 'lib/api/helpers/projects_helpers.rb' + - 'lib/api/helpers/snippets_helpers.rb' + - 'lib/api/helpers/version.rb' + - 'lib/api/internal/base.rb' + - 'lib/api/projects.rb' + - 'lib/backup/files.rb' + - 'lib/banzai/filter/external_link_filter.rb' + - 'lib/banzai/filter/gollum_tags_filter.rb' + - 'lib/banzai/filter/references/merge_request_reference_filter.rb' + - 'lib/banzai/filter/wiki_link_filter/rewriter.rb' + - 'lib/bulk_imports/clients/graphql.rb' + - 'lib/bulk_imports/clients/http.rb' + - 'lib/bulk_imports/projects/pipelines/project_pipeline.rb' + - 'lib/container_registry/client.rb' + - 'lib/feature/definition.rb' + - 'lib/gem_extensions/active_record/association.rb' + - 'lib/gitlab/analytics/cycle_analytics/request_params.rb' + - 'lib/gitlab/auth.rb' + - 'lib/gitlab/auth/ldap/adapter.rb' + - 'lib/gitlab/auth/o_auth/user.rb' + - 'lib/gitlab/auth/unique_ips_limiter.rb' + - 'lib/gitlab/background_migration/fix_projects_without_project_feature.rb' + - 'lib/gitlab/bitbucket_import/importer.rb' + - 'lib/gitlab/bitbucket_server_import/importer.rb' + - 'lib/gitlab/blob_helper.rb' + - 'lib/gitlab/cache/ci/project_pipeline_status.rb' + - 'lib/gitlab/changelog/config.rb' + - 'lib/gitlab/chat/responder.rb' + - 'lib/gitlab/checks/branch_check.rb' + - 'lib/gitlab/checks/matching_merge_request.rb' + - 'lib/gitlab/checks/push_file_count_check.rb' + - 'lib/gitlab/ci/ansi2json/parser.rb' + - 'lib/gitlab/ci/ansi2json/state.rb' + - 'lib/gitlab/ci/artifact_file_reader.rb' + - 'lib/gitlab/ci/build/policy/kubernetes.rb' + - 'lib/gitlab/ci/build/policy/refs.rb' + - 'lib/gitlab/ci/config.rb' + - 'lib/gitlab/ci/config/entry/job.rb' + - 'lib/gitlab/ci/config/entry/processable.rb' + - 'lib/gitlab/ci/config/extendable/entry.rb' + - 'lib/gitlab/ci/config/external/file/base.rb' + - 'lib/gitlab/ci/config/external/file/remote.rb' + - 'lib/gitlab/ci/config/external/file/template.rb' + - 'lib/gitlab/ci/config/external/mapper.rb' + - 'lib/gitlab/ci/parsers/coverage/sax_document.rb' + - 'lib/gitlab/ci/parsers/security/common.rb' + - 'lib/gitlab/ci/pipeline/chain/command.rb' + - 'lib/gitlab/ci/pipeline/chain/limit/rate_limit.rb' + - 'lib/gitlab/ci/pipeline/chain/skip.rb' + - 'lib/gitlab/ci/pipeline/chain/validate/abilities.rb' + - 'lib/gitlab/ci/pipeline/chain/validate/repository.rb' + - 'lib/gitlab/ci/pipeline/expression/lexeme/base.rb' + - 'lib/gitlab/ci/pipeline/expression/lexeme/pattern.rb' + - 'lib/gitlab/ci/reports/codequality_reports_comparer.rb' + - 'lib/gitlab/ci/reports/security/vulnerability_reports_comparer.rb' + - 'lib/gitlab/ci/runner/backoff.rb' + - 'lib/gitlab/ci/trace.rb' + - 'lib/gitlab/ci/trace/archive.rb' + - 'lib/gitlab/ci/trace/stream.rb' + - 'lib/gitlab/ci/yaml_processor.rb' + - 'lib/gitlab/config/entry/validators.rb' + - 'lib/gitlab/database/background_migration/batch_optimizer.rb' + - 'lib/gitlab/database/background_migration/batched_migration_wrapper.rb' + - 'lib/gitlab/database/consistency_checker.rb' + - 'lib/gitlab/database/load_balancing/configuration.rb' + - 'lib/gitlab/database/load_balancing/load_balancer.rb' + - 'lib/gitlab/database/migration_helpers.rb' + - 'lib/gitlab/database/migration_helpers/v2.rb' + - 'lib/gitlab/database/partitioning/partition_manager.rb' + - 'lib/gitlab/database/partitioning/sliding_list_strategy.rb' + - 'lib/gitlab/database/postgresql_adapter/force_disconnectable_mixin.rb' + - 'lib/gitlab/database/query_analyzers/restrict_allowed_schemas.rb' + - 'lib/gitlab/diff/custom_diff.rb' + - 'lib/gitlab/diff/file.rb' + - 'lib/gitlab/diff/highlight.rb' + - 'lib/gitlab/diff/highlight_cache.rb' + - 'lib/gitlab/email/handler/create_merge_request_handler.rb' + - 'lib/gitlab/email/handler/create_note_on_issuable_handler.rb' + - 'lib/gitlab/email/handler/service_desk_handler.rb' + - 'lib/gitlab/email/hook/email_template_interceptor.rb' + - 'lib/gitlab/email/receiver.rb' + - 'lib/gitlab/endpoint_attributes/config.rb' + - 'lib/gitlab/error_tracking.rb' + - 'lib/gitlab/event_store/event.rb' + - 'lib/gitlab/event_store/store.rb' + - 'lib/gitlab/exception_log_formatter.rb' + - 'lib/gitlab/fogbugz_import/importer.rb' + - 'lib/gitlab/git/tag.rb' + - 'lib/gitlab/git_access.rb' + - 'lib/gitlab/git_access_design.rb' + - 'lib/gitlab/git_access_snippet.rb' + - 'lib/gitlab/gitaly_client/blobs_stitcher.rb' + - 'lib/gitlab/gitaly_client/conflicts_service.rb' + - 'lib/gitlab/gitaly_client/operation_service.rb' + - 'lib/gitlab/gitaly_client/wiki_service.rb' + - 'lib/gitlab/github_import.rb' + - 'lib/gitlab/github_import/client.rb' + - 'lib/gitlab/github_import/importer/pull_request_importer.rb' + - 'lib/gitlab/github_import/importer/pull_request_merged_by_importer.rb' + - 'lib/gitlab/github_import/importer/pull_request_review_importer.rb' + - 'lib/gitlab/github_import/object_counter.rb' + - 'lib/gitlab/gitlab_import/client.rb' + - 'lib/gitlab/gitlab_import/importer.rb' + - 'lib/gitlab/graphql/pagination/keyset/conditions/not_null_condition.rb' + - 'lib/gitlab/graphql/pagination/keyset/conditions/null_condition.rb' + - 'lib/gitlab/graphql/pagination/keyset/order_info.rb' + - 'lib/gitlab/graphql/pagination/keyset/query_builder.rb' + - 'lib/gitlab/graphql/query_analyzers/recursion_analyzer.rb' + - 'lib/gitlab/i18n/metadata_entry.rb' + - 'lib/gitlab/i18n/po_linter.rb' + - 'lib/gitlab/import_export/after_export_strategies/web_upload_strategy.rb' + - 'lib/gitlab/import_export/base/object_builder.rb' + - 'lib/gitlab/import_export/base/relation_factory.rb' + - 'lib/gitlab/import_export/command_line_util.rb' + - 'lib/gitlab/import_export/group/tree_restorer.rb' + - 'lib/gitlab/import_export/importer.rb' + - 'lib/gitlab/import_export/repo_restorer.rb' + - 'lib/gitlab/import_export/snippet_repo_restorer.rb' + - 'lib/gitlab/import_export/version_checker.rb' + - 'lib/gitlab/instrumentation/redis_cluster_validator.rb' + - 'lib/gitlab/instrumentation/uploads.rb' + - 'lib/gitlab/legacy_github_import/client.rb' + - 'lib/gitlab/legacy_github_import/issuable_formatter.rb' + - 'lib/gitlab/marginalia.rb' + - 'lib/gitlab/metrics/samplers/ruby_sampler.rb' + - 'lib/gitlab/metrics/subscribers/action_cable.rb' + - 'lib/gitlab/metrics/subscribers/active_record.rb' + - 'lib/gitlab/metrics/subscribers/external_http.rb' + - 'lib/gitlab/metrics/subscribers/rails_cache.rb' + - 'lib/gitlab/metrics/web_transaction.rb' + - 'lib/gitlab/middleware/read_only/controller.rb' + - 'lib/gitlab/pagination/gitaly_keyset_pager.rb' + - 'lib/gitlab/pagination/keyset/column_order_definition.rb' + - 'lib/gitlab/pagination/keyset/in_operator_optimization/array_scope_columns.rb' + - 'lib/gitlab/pagination/keyset/order.rb' + - 'lib/gitlab/pagination/keyset/pager.rb' + - 'lib/gitlab/pagination/keyset/paginator.rb' + - 'lib/gitlab/pagination/keyset/simple_order_builder.rb' + - 'lib/gitlab/patch/global_id.rb' + - 'lib/gitlab/patch/sprockets_base_file_digest_key.rb' + - 'lib/gitlab/process_supervisor.rb' + - 'lib/gitlab/prometheus/query_variables.rb' + - 'lib/gitlab/prometheus_client.rb' + - 'lib/gitlab/recaptcha.rb' + - 'lib/gitlab/relative_positioning/mover.rb' + - 'lib/gitlab/sanitizers/exif.rb' + - 'lib/gitlab/search/abuse_validators/no_abusive_coercion_from_string_validator.rb' + - 'lib/gitlab/search/abuse_validators/no_abusive_term_length_validator.rb' + - 'lib/gitlab/search/params.rb' + - 'lib/gitlab/serializer/pagination.rb' + - 'lib/gitlab/serverless/service.rb' + - 'lib/gitlab/shell.rb' + - 'lib/gitlab/sidekiq_config/cli_methods.rb' + - 'lib/gitlab/sidekiq_middleware/extra_done_log_metadata.rb' + - 'lib/gitlab/sidekiq_middleware/size_limiter/compressor.rb' + - 'lib/gitlab/sql/set_operator.rb' + - 'lib/gitlab/ssh_public_key.rb' + - 'lib/gitlab/url_blocker.rb' + - 'lib/gitlab/usage/metric_definition.rb' + - 'lib/gitlab/usage_data_counters/ci_template_unique_counter.rb' + - 'lib/gitlab/utils.rb' + - 'lib/gitlab/utils/override.rb' + - 'lib/gitlab/webpack/manifest.rb' + - 'lib/mattermost/session.rb' + - 'lib/release_highlights/validator/entry.rb' + - 'lib/safe_zip/entry.rb' + - 'lib/system_check/app/systemd_unit_files_or_init_script_up_to_date_check.rb' + - 'lib/system_check/incoming_email/mail_room_running_check.rb' + - 'lib/tasks/config_lint.rake' + - 'lib/tasks/gettext.rake' + - 'qa/qa/ee/page/file/show.rb' + - 'qa/qa/ee/resource/license.rb' + - 'qa/qa/mobile/page/main/menu.rb' + - 'qa/qa/mobile/page/sub_menus/common.rb' + - 'qa/qa/page/base.rb' + - 'qa/qa/page/component/invite_members_modal.rb' + - 'qa/qa/page/component/select2.rb' + - 'qa/qa/page/component/snippet.rb' + - 'qa/qa/page/mattermost/login.rb' + - 'qa/qa/page/page_concern.rb' + - 'qa/qa/resource/api_fabricator.rb' + - 'qa/qa/resource/package.rb' + - 'qa/qa/resource/registry_repository.rb' + - 'qa/qa/resource/reusable.rb' + - 'qa/qa/resource/user_gpg.rb' + - 'qa/qa/runtime/feature.rb' + - 'qa/qa/runtime/search.rb' + - 'qa/qa/service/cluster_provider/gcloud.rb' + - 'qa/qa/service/docker_run/gitlab_runner.rb' + - 'qa/qa/specs/features/browser_ui/1_manage/login/register_spec.rb' + - 'qa/qa/specs/features/ee/browser_ui/11_fulfillment/purchase/free_trial_spec.rb' + - 'qa/qa/specs/features/ee/browser_ui/1_manage/group/group_audit_logs_1_spec.rb' + - 'qa/qa/specs/features/ee/browser_ui/1_manage/group/group_file_template_spec.rb' + - 'qa/qa/specs/features/ee/browser_ui/1_manage/project/project_audit_logs_spec.rb' + - 'qa/qa/specs/helpers/feature_flag.rb' + - 'qa/qa/support/page_error_checker.rb' + - 'rubocop/cop/api/grape_array_missing_coerce.rb' + - 'rubocop/cop/gitlab/duplicate_spec_location.rb' + - 'rubocop/cop/gitlab/event_store_subscriber.rb' + - 'rubocop/cop/gitlab/finder_with_find_by.rb' + - 'rubocop/cop/gitlab/keys_first_and_values_first.rb' + - 'rubocop/cop/gitlab/policy_rule_boolean.rb' + - 'rubocop/cop/ignored_columns.rb' + - 'rubocop/cop/migration/add_limit_to_text_columns.rb' + - 'rubocop/cop/migration/update_column_in_batches.rb' + - 'rubocop/cop/rspec/web_mock_enable.rb' + - 'rubocop/cop/usage_data/histogram_with_large_table.rb' + - 'rubocop/cop/usage_data/large_table.rb' + - 'rubocop/routes_under_scope.rb' + - 'scripts/lint_templates_bash.rb' + - 'scripts/setup/find-jh-branch.rb' + - 'scripts/trigger-build.rb' + - 'spec/deprecation_toolkit_env.rb' + - 'spec/features/issuables/issuable_list_spec.rb' + - 'spec/features/projects/blobs/edit_spec.rb' + - 'spec/features/refactor_blob_viewer_disabled/projects/blobs/edit_spec.rb' + - 'spec/lib/gitlab/database/migrations/background_migration_helpers_spec.rb' + - 'spec/services/issues/relative_position_rebalancing_service_spec.rb' + - 'spec/services/packages/maven/metadata/append_package_file_service_spec.rb' + - 'spec/support/capybara.rb' + - 'spec/support/database/prevent_cross_joins.rb' + - 'spec/support/helpers/access_matchers_helpers.rb' + - 'spec/support/helpers/bare_repo_operations.rb' + - 'spec/support/helpers/capybara_helpers.rb' + - 'spec/support/helpers/dropzone_helper.rb' + - 'spec/support/helpers/fake_blob_helpers.rb' + - 'spec/support/helpers/filtered_search_helpers.rb' + - 'spec/support/helpers/gitaly_setup.rb' + - 'spec/support/helpers/javascript_fixtures_helpers.rb' + - 'spec/support/helpers/login_helpers.rb' + - 'spec/support/helpers/stub_gitlab_calls.rb' + - 'spec/support/helpers/test_env.rb' + - 'spec/support/helpers/wait_helpers.rb' + - 'spec/support/import_export/export_file_helper.rb' + - 'spec/support/shared_examples/features/packages_shared_examples.rb' + - 'spec/support/shared_examples/services/packages/debian/generate_distribution_shared_examples.rb' + - 'spec/workers/container_expiration_policies/cleanup_container_repository_worker_spec.rb' + - 'tooling/lib/tooling/helm3_client.rb' + - 'tooling/lib/tooling/image.rb' + - 'tooling/lib/tooling/kubernetes_client.rb' + - 'tooling/rspec_flaky/flaky_example.rb' + - 'tooling/rspec_flaky/listener.rb' diff --git a/.rubocop_todo/style/if_unless_modifier.yml b/.rubocop_todo/style/if_unless_modifier.yml new file mode 100644 index 00000000000..7bbc62d4c27 --- /dev/null +++ b/.rubocop_todo/style/if_unless_modifier.yml @@ -0,0 +1,1276 @@ +--- +# Cop supports --auto-correct. +Style/IfUnlessModifier: + # Offense count: 1937 + # Temporarily disabled due to too many offenses + Enabled: false + Exclude: + - 'app/channels/graphql_channel.rb' + - 'app/controllers/admin/application_settings_controller.rb' + - 'app/controllers/admin/projects_controller.rb' + - 'app/controllers/admin/requests_profiles_controller.rb' + - 'app/controllers/admin/runners_controller.rb' + - 'app/controllers/admin/users_controller.rb' + - 'app/controllers/application_controller.rb' + - 'app/controllers/concerns/controller_with_cross_project_access_check.rb' + - 'app/controllers/concerns/cycle_analytics_params.rb' + - 'app/controllers/concerns/enforces_two_factor_authentication.rb' + - 'app/controllers/concerns/issuable_actions.rb' + - 'app/controllers/concerns/issuable_collections.rb' + - 'app/controllers/concerns/issues_calendar.rb' + - 'app/controllers/concerns/labels_as_hash.rb' + - 'app/controllers/concerns/metrics/dashboard/prometheus_api_proxy.rb' + - 'app/controllers/concerns/metrics_dashboard.rb' + - 'app/controllers/concerns/notes_actions.rb' + - 'app/controllers/concerns/oauth_applications.rb' + - 'app/controllers/concerns/paginated_collection.rb' + - 'app/controllers/concerns/record_user_last_activity.rb' + - 'app/controllers/concerns/sorting_preference.rb' + - 'app/controllers/concerns/wiki_actions.rb' + - 'app/controllers/concerns/with_performance_bar.rb' + - 'app/controllers/explore/projects_controller.rb' + - 'app/controllers/groups/application_controller.rb' + - 'app/controllers/groups/group_members_controller.rb' + - 'app/controllers/groups_controller.rb' + - 'app/controllers/import/fogbugz_controller.rb' + - 'app/controllers/import/gitea_controller.rb' + - 'app/controllers/import/gitlab_controller.rb' + - 'app/controllers/import/manifest_controller.rb' + - 'app/controllers/jira_connect/application_controller.rb' + - 'app/controllers/jwt_controller.rb' + - 'app/controllers/omniauth_callbacks_controller.rb' + - 'app/controllers/profiles/emails_controller.rb' + - 'app/controllers/profiles/two_factor_auths_controller.rb' + - 'app/controllers/projects/application_controller.rb' + - 'app/controllers/projects/blame_controller.rb' + - 'app/controllers/projects/blob_controller.rb' + - 'app/controllers/projects/branches_controller.rb' + - 'app/controllers/projects/commits_controller.rb' + - 'app/controllers/projects/cycle_analytics_controller.rb' + - 'app/controllers/projects/deploy_keys_controller.rb' + - 'app/controllers/projects/design_management/designs_controller.rb' + - 'app/controllers/projects/imports_controller.rb' + - 'app/controllers/projects/integrations/shimos_controller.rb' + - 'app/controllers/projects/issues_controller.rb' + - 'app/controllers/projects/merge_requests/diffs_controller.rb' + - 'app/controllers/projects/merge_requests_controller.rb' + - 'app/controllers/projects/protected_refs_controller.rb' + - 'app/controllers/projects/releases_controller.rb' + - 'app/controllers/projects/runners_controller.rb' + - 'app/controllers/projects/services_controller.rb' + - 'app/controllers/registrations_controller.rb' + - 'app/controllers/repositories/git_http_controller.rb' + - 'app/controllers/repositories/lfs_api_controller.rb' + - 'app/controllers/sessions_controller.rb' + - 'app/controllers/users/terms_controller.rb' + - 'app/finders/autocomplete/users_finder.rb' + - 'app/finders/ci/auth_job_finder.rb' + - 'app/finders/ci/pipelines_finder.rb' + - 'app/finders/ci/runners_finder.rb' + - 'app/finders/deployments_finder.rb' + - 'app/finders/design_management/versions_finder.rb' + - 'app/finders/feature_flags_finder.rb' + - 'app/finders/feature_flags_user_lists_finder.rb' + - 'app/finders/group_members_finder.rb' + - 'app/finders/group_projects_finder.rb' + - 'app/finders/labels_finder.rb' + - 'app/finders/members_finder.rb' + - 'app/finders/metrics/users_starred_dashboards_finder.rb' + - 'app/finders/namespaces/projects_finder.rb' + - 'app/finders/notes_finder.rb' + - 'app/finders/packages/helm/packages_finder.rb' + - 'app/finders/personal_access_tokens_finder.rb' + - 'app/finders/projects/export_job_finder.rb' + - 'app/finders/projects/members/effective_access_level_finder.rb' + - 'app/finders/projects_finder.rb' + - 'app/finders/prometheus_metrics_finder.rb' + - 'app/finders/todos_finder.rb' + - 'app/finders/union_finder.rb' + - 'app/graphql/mutations/admin/sidekiq_queues/delete_jobs.rb' + - 'app/graphql/mutations/boards/lists/base_update.rb' + - 'app/graphql/mutations/issues/set_crm_contacts.rb' + - 'app/graphql/mutations/packages/destroy_file.rb' + - 'app/graphql/mutations/release_asset_links/create.rb' + - 'app/graphql/mutations/release_asset_links/delete.rb' + - 'app/graphql/mutations/release_asset_links/update.rb' + - 'app/graphql/mutations/todos/mark_all_done.rb' + - 'app/graphql/mutations/work_items/create.rb' + - 'app/graphql/resolvers/blobs_resolver.rb' + - 'app/graphql/resolvers/ci/runner_jobs_resolver.rb' + - 'app/graphql/resolvers/concerns/board_item_filterable.rb' + - 'app/graphql/resolvers/concerns/issue_resolver_arguments.rb' + - 'app/graphql/resolvers/concerns/time_frame_arguments.rb' + - 'app/graphql/resolvers/group_packages_resolver.rb' + - 'app/graphql/resolvers/package_details_resolver.rb' + - 'app/graphql/resolvers/project_jobs_resolver.rb' + - 'app/graphql/resolvers/project_pipeline_resolver.rb' + - 'app/graphql/resolvers/timelog_resolver.rb' + - 'app/graphql/types/ci/job_type.rb' + - 'app/helpers/admin/user_actions_helper.rb' + - 'app/helpers/appearances_helper.rb' + - 'app/helpers/blob_helper.rb' + - 'app/helpers/button_helper.rb' + - 'app/helpers/ci/status_helper.rb' + - 'app/helpers/dashboard_helper.rb' + - 'app/helpers/diff_helper.rb' + - 'app/helpers/dropdowns_helper.rb' + - 'app/helpers/emails_helper.rb' + - 'app/helpers/events_helper.rb' + - 'app/helpers/form_helper.rb' + - 'app/helpers/groups_helper.rb' + - 'app/helpers/issuables_description_templates_helper.rb' + - 'app/helpers/issuables_helper.rb' + - 'app/helpers/issues_helper.rb' + - 'app/helpers/lazy_image_tag_helper.rb' + - 'app/helpers/markup_helper.rb' + - 'app/helpers/merge_requests_helper.rb' + - 'app/helpers/namespaces_helper.rb' + - 'app/helpers/nav/top_nav_helper.rb' + - 'app/helpers/nav_helper.rb' + - 'app/helpers/page_layout_helper.rb' + - 'app/helpers/preferences_helper.rb' + - 'app/helpers/projects_helper.rb' + - 'app/helpers/releases_helper.rb' + - 'app/helpers/reminder_emails_helper.rb' + - 'app/helpers/routing/artifacts_helper.rb' + - 'app/helpers/search_helper.rb' + - 'app/helpers/selects_helper.rb' + - 'app/helpers/snippets_helper.rb' + - 'app/helpers/sorting_helper.rb' + - 'app/helpers/submodule_helper.rb' + - 'app/helpers/tab_helper.rb' + - 'app/helpers/timeboxes_helper.rb' + - 'app/helpers/webpack_helper.rb' + - 'app/helpers/wiki_helper.rb' + - 'app/helpers/x509_helper.rb' + - 'app/mailers/emails/members.rb' + - 'app/mailers/emails/merge_requests.rb' + - 'app/mailers/notify.rb' + - 'app/models/ability.rb' + - 'app/models/appearance.rb' + - 'app/models/application_setting_implementation.rb' + - 'app/models/broadcast_message.rb' + - 'app/models/bulk_imports/entity.rb' + - 'app/models/ci/application_record.rb' + - 'app/models/ci/build.rb' + - 'app/models/ci/build_trace_chunk.rb' + - 'app/models/ci/job_artifact.rb' + - 'app/models/ci/legacy_stage.rb' + - 'app/models/ci/pipeline.rb' + - 'app/models/ci/runner.rb' + - 'app/models/ci/running_build.rb' + - 'app/models/clusters/cluster.rb' + - 'app/models/clusters/clusters_hierarchy.rb' + - 'app/models/clusters/platforms/kubernetes.rb' + - 'app/models/commit.rb' + - 'app/models/commit_range.rb' + - 'app/models/concerns/atomic_internal_id.rb' + - 'app/models/concerns/avatarable.rb' + - 'app/models/concerns/bulk_insert_safe.rb' + - 'app/models/concerns/bulk_insertable_associations.rb' + - 'app/models/concerns/bulk_users_by_email_load.rb' + - 'app/models/concerns/cache_markdown_field.rb' + - 'app/models/concerns/ci/artifactable.rb' + - 'app/models/concerns/counter_attribute.rb' + - 'app/models/concerns/deprecated_assignee.rb' + - 'app/models/concerns/diff_positionable_note.rb' + - 'app/models/concerns/group_descendant.rb' + - 'app/models/concerns/has_wiki_page_meta_attributes.rb' + - 'app/models/concerns/id_in_ordered.rb' + - 'app/models/concerns/ignorable_columns.rb' + - 'app/models/concerns/issuable.rb' + - 'app/models/concerns/issuable_link.rb' + - 'app/models/concerns/issue_available_features.rb' + - 'app/models/concerns/limitable.rb' + - 'app/models/concerns/mentionable.rb' + - 'app/models/concerns/noteable.rb' + - 'app/models/concerns/routable.rb' + - 'app/models/concerns/timebox.rb' + - 'app/models/concerns/token_authenticatable_strategies/base.rb' + - 'app/models/concerns/token_authenticatable_strategies/digest.rb' + - 'app/models/concerns/token_authenticatable_strategies/encrypted.rb' + - 'app/models/concerns/token_authenticatable_strategies/encryption_helper.rb' + - 'app/models/container_registry/event.rb' + - 'app/models/container_repository.rb' + - 'app/models/customer_relations/contact.rb' + - 'app/models/diff_viewer/base.rb' + - 'app/models/environment.rb' + - 'app/models/error_tracking/project_error_tracking_setting.rb' + - 'app/models/external_pull_request.rb' + - 'app/models/generic_commit_status.rb' + - 'app/models/group.rb' + - 'app/models/integrations/asana.rb' + - 'app/models/integrations/bamboo.rb' + - 'app/models/integrations/base_chat_notification.rb' + - 'app/models/integrations/datadog.rb' + - 'app/models/integrations/harbor.rb' + - 'app/models/integrations/irker.rb' + - 'app/models/integrations/jenkins.rb' + - 'app/models/integrations/jira.rb' + - 'app/models/integrations/pushover.rb' + - 'app/models/integrations/teamcity.rb' + - 'app/models/issue_email_participant.rb' + - 'app/models/label_note.rb' + - 'app/models/list.rb' + - 'app/models/member.rb' + - 'app/models/members/group_member.rb' + - 'app/models/members/project_member.rb' + - 'app/models/members_preloader.rb' + - 'app/models/merge_request.rb' + - 'app/models/milestone.rb' + - 'app/models/namespace.rb' + - 'app/models/namespace_setting.rb' + - 'app/models/namespaces/traversal/linear.rb' + - 'app/models/namespaces/traversal/linear_scopes.rb' + - 'app/models/network/graph.rb' + - 'app/models/note.rb' + - 'app/models/notification_setting.rb' + - 'app/models/operations/feature_flags/strategy.rb' + - 'app/models/packages/conan/file_metadatum.rb' + - 'app/models/packages/conan/metadatum.rb' + - 'app/models/packages/dependency.rb' + - 'app/models/packages/go/module.rb' + - 'app/models/packages/maven/metadatum.rb' + - 'app/models/packages/package.rb' + - 'app/models/packages/pypi/metadatum.rb' + - 'app/models/packages/rubygems/metadatum.rb' + - 'app/models/pages_domain.rb' + - 'app/models/performance_monitoring/prometheus_dashboard.rb' + - 'app/models/project.rb' + - 'app/models/project_team.rb' + - 'app/models/projects/topic.rb' + - 'app/models/releases/link.rb' + - 'app/models/remote_mirror.rb' + - 'app/models/repository.rb' + - 'app/models/route.rb' + - 'app/models/sent_notification.rb' + - 'app/models/service_desk_setting.rb' + - 'app/models/snippet_input_action.rb' + - 'app/models/state_note.rb' + - 'app/models/suggestion.rb' + - 'app/models/synthetic_note.rb' + - 'app/models/user.rb' + - 'app/models/wiki.rb' + - 'app/presenters/blob_presenter.rb' + - 'app/presenters/ci/pipeline_presenter.rb' + - 'app/presenters/merge_request_presenter.rb' + - 'app/serializers/base_discussion_entity.rb' + - 'app/serializers/ci/pipeline_entity.rb' + - 'app/serializers/issue_entity.rb' + - 'app/serializers/merge_request_diff_entity.rb' + - 'app/serializers/pipeline_serializer.rb' + - 'app/services/application_settings/update_service.rb' + - 'app/services/authorized_project_update/find_records_due_for_refresh_service.rb' + - 'app/services/auto_merge/merge_when_pipeline_succeeds_service.rb' + - 'app/services/award_emojis/add_service.rb' + - 'app/services/award_emojis/destroy_service.rb' + - 'app/services/badges/update_service.rb' + - 'app/services/boards/issues/list_service.rb' + - 'app/services/boards/issues/move_service.rb' + - 'app/services/boards/lists/base_create_service.rb' + - 'app/services/boards/lists/list_service.rb' + - 'app/services/branches/validate_new_service.rb' + - 'app/services/bulk_imports/file_decompression_service.rb' + - 'app/services/ci/create_pipeline_service.rb' + - 'app/services/ci/create_web_ide_terminal_service.rb' + - 'app/services/ci/job_token_scope/remove_project_service.rb' + - 'app/services/ci/parse_dotenv_artifact_service.rb' + - 'app/services/ci/pipeline_processing/atomic_processing_service.rb' + - 'app/services/ci/pipelines/add_job_service.rb' + - 'app/services/ci/register_job_service.rb' + - 'app/services/ci/retry_job_service.rb' + - 'app/services/ci/run_scheduled_build_service.rb' + - 'app/services/ci/update_build_state_service.rb' + - 'app/services/clusters/applications/base_service.rb' + - 'app/services/clusters/applications/prometheus_update_service.rb' + - 'app/services/clusters/aws/fetch_credentials_service.rb' + - 'app/services/clusters/gcp/provision_service.rb' + - 'app/services/clusters/update_service.rb' + - 'app/services/commits/commit_patch_service.rb' + - 'app/services/commits/create_service.rb' + - 'app/services/commits/tag_service.rb' + - 'app/services/concerns/merge_requests/assigns_merge_params.rb' + - 'app/services/dependency_proxy/group_settings/update_service.rb' + - 'app/services/dependency_proxy/image_ttl_group_policies/update_service.rb' + - 'app/services/design_management/copy_design_collection/queue_service.rb' + - 'app/services/discussions/resolve_service.rb' + - 'app/services/discussions/update_diff_position_service.rb' + - 'app/services/draft_notes/create_service.rb' + - 'app/services/draft_notes/destroy_service.rb' + - 'app/services/emails/create_service.rb' + - 'app/services/environments/canary_ingress/update_service.rb' + - 'app/services/environments/reset_auto_stop_service.rb' + - 'app/services/error_tracking/collect_error_service.rb' + - 'app/services/git/process_ref_changes_service.rb' + - 'app/services/google_cloud/generate_pipeline_service.rb' + - 'app/services/groups/create_service.rb' + - 'app/services/groups/transfer_service.rb' + - 'app/services/groups/update_statistics_service.rb' + - 'app/services/ide/base_config_service.rb' + - 'app/services/import/bitbucket_server_service.rb' + - 'app/services/import/github_service.rb' + - 'app/services/import/gitlab_projects/file_acquisition_strategies/remote_file.rb' + - 'app/services/issuable/bulk_update_service.rb' + - 'app/services/issuable/clone/attributes_rewriter.rb' + - 'app/services/issuable/common_system_notes_service.rb' + - 'app/services/issuable_base_service.rb' + - 'app/services/issuable_links/create_service.rb' + - 'app/services/issues/move_service.rb' + - 'app/services/issues/relative_position_rebalancing_service.rb' + - 'app/services/issues/update_service.rb' + - 'app/services/lfs/lock_file_service.rb' + - 'app/services/members/approve_access_request_service.rb' + - 'app/services/members/destroy_service.rb' + - 'app/services/members/update_service.rb' + - 'app/services/merge_requests/add_context_service.rb' + - 'app/services/merge_requests/base_service.rb' + - 'app/services/merge_requests/build_service.rb' + - 'app/services/merge_requests/handle_assignees_change_service.rb' + - 'app/services/merge_requests/merge_base_service.rb' + - 'app/services/merge_requests/mergeability/run_checks_service.rb' + - 'app/services/merge_requests/mergeability_check_service.rb' + - 'app/services/merge_requests/push_options_handler_service.rb' + - 'app/services/merge_requests/refresh_service.rb' + - 'app/services/merge_requests/request_attention_service.rb' + - 'app/services/merge_requests/squash_service.rb' + - 'app/services/merge_requests/toggle_attention_requested_service.rb' + - 'app/services/merge_requests/update_service.rb' + - 'app/services/metrics/dashboard/clone_dashboard_service.rb' + - 'app/services/metrics/dashboard/update_dashboard_service.rb' + - 'app/services/milestones/close_service.rb' + - 'app/services/milestones/create_service.rb' + - 'app/services/milestones/promote_service.rb' + - 'app/services/milestones/reopen_service.rb' + - 'app/services/milestones/update_service.rb' + - 'app/services/notes/quick_actions_service.rb' + - 'app/services/notes/update_service.rb' + - 'app/services/notification_recipients/builder/base.rb' + - 'app/services/notification_recipients/builder/default.rb' + - 'app/services/notification_service.rb' + - 'app/services/packages/create_dependency_service.rb' + - 'app/services/packages/create_package_service.rb' + - 'app/services/packages/debian/create_distribution_service.rb' + - 'app/services/packages/debian/extract_changes_metadata_service.rb' + - 'app/services/packages/debian/parse_debian822_service.rb' + - 'app/services/packages/debian/update_distribution_service.rb' + - 'app/services/packages/go/create_package_service.rb' + - 'app/services/packages/go/sync_packages_service.rb' + - 'app/services/packages/maven/find_or_create_package_service.rb' + - 'app/services/packages/nuget/update_package_from_metadata_service.rb' + - 'app/services/packages/pypi/create_package_service.rb' + - 'app/services/packages/rubygems/dependency_resolver_service.rb' + - 'app/services/pages/migrate_legacy_storage_to_deployment_service.rb' + - 'app/services/pod_logs/kubernetes_service.rb' + - 'app/services/post_receive_service.rb' + - 'app/services/projects/container_repository/gitlab/delete_tags_service.rb' + - 'app/services/projects/container_repository/third_party/delete_tags_service.rb' + - 'app/services/projects/create_service.rb' + - 'app/services/projects/enable_deploy_key_service.rb' + - 'app/services/projects/fork_service.rb' + - 'app/services/projects/git_deduplication_service.rb' + - 'app/services/projects/hashed_storage/rollback_service.rb' + - 'app/services/projects/import_export/export_service.rb' + - 'app/services/projects/import_service.rb' + - 'app/services/projects/lfs_pointers/lfs_download_service.rb' + - 'app/services/projects/lfs_pointers/lfs_link_service.rb' + - 'app/services/projects/operations/update_service.rb' + - 'app/services/projects/overwrite_project_service.rb' + - 'app/services/projects/participants_service.rb' + - 'app/services/projects/transfer_service.rb' + - 'app/services/projects/update_pages_service.rb' + - 'app/services/projects/update_repository_storage_service.rb' + - 'app/services/resource_access_tokens/create_service.rb' + - 'app/services/resource_events/change_labels_service.rb' + - 'app/services/service_ping/devops_report_service.rb' + - 'app/services/snippets/create_service.rb' + - 'app/services/snippets/destroy_service.rb' + - 'app/services/snippets/repository_validation_service.rb' + - 'app/services/spam/spam_action_service.rb' + - 'app/services/spam/spam_verdict_service.rb' + - 'app/services/static_site_editor/config_service.rb' + - 'app/services/system_notes/issuables_service.rb' + - 'app/services/tags/destroy_service.rb' + - 'app/services/two_factor/destroy_service.rb' + - 'app/services/users/approve_service.rb' + - 'app/services/users/build_service.rb' + - 'app/services/users/respond_to_terms_service.rb' + - 'app/services/wikis/create_attachment_service.rb' + - 'app/services/work_items/create_service.rb' + - 'app/services/work_items/task_list_reference_replacement_service.rb' + - 'app/uploaders/file_mover.rb' + - 'app/uploaders/object_storage.rb' + - 'app/validators/abstract_path_validator.rb' + - 'app/validators/addressable_url_validator.rb' + - 'app/validators/any_field_validator.rb' + - 'app/validators/branch_filter_validator.rb' + - 'app/validators/certificate_key_validator.rb' + - 'app/validators/certificate_validator.rb' + - 'app/validators/cluster_name_validator.rb' + - 'app/validators/cron_freeze_period_timezone_validator.rb' + - 'app/validators/json_schema_validator.rb' + - 'app/validators/key_restriction_validator.rb' + - 'app/validators/line_code_validator.rb' + - 'app/validators/named_ecdsa_key_validator.rb' + - 'app/validators/rsa_key_validator.rb' + - 'app/validators/top_level_group_validator.rb' + - 'app/views/projects/merge_requests/index.atom.builder' + - 'app/workers/authorized_project_update/user_refresh_from_replica_worker.rb' + - 'app/workers/auto_devops/disable_worker.rb' + - 'app/workers/bulk_imports/pipeline_worker.rb' + - 'app/workers/cleanup_container_repository_worker.rb' + - 'app/workers/concerns/application_worker.rb' + - 'app/workers/concerns/packages/cleanup_artifact_worker.rb' + - 'app/workers/concerns/project_start_import.rb' + - 'app/workers/concerns/worker_attributes.rb' + - 'app/workers/database/batched_background_migration/single_database_worker.rb' + - 'app/workers/file_hook_worker.rb' + - 'app/workers/issue_rebalancing_worker.rb' + - 'app/workers/issues/rebalancing_worker.rb' + - 'app/workers/merge_request_mergeability_check_worker.rb' + - 'app/workers/object_storage/migrate_uploads_worker.rb' + - 'app/workers/process_commit_worker.rb' + - 'app/workers/remove_expired_members_worker.rb' + - 'app/workers/repository_fork_worker.rb' + - 'app/workers/repository_update_remote_mirror_worker.rb' + - 'config/application.rb' + - 'config/initializers/01_active_record_database_tasks_configuration_flag.rb' + - 'config/initializers/01_secret_token.rb' + - 'config/initializers/0_inject_enterprise_edition_module.rb' + - 'config/initializers/1_settings.rb' + - 'config/initializers/6_validations.rb' + - 'config/initializers/8_devise.rb' + - 'config/initializers/active_record_data_types.rb' + - 'config/initializers/active_record_transaction_patches.rb' + - 'config/initializers/content_security_policy.rb' + - 'config/initializers/default_url_options.rb' + - 'config/initializers/direct_upload_support.rb' + - 'config/initializers/geo.rb' + - 'config/initializers/google_api_client.rb' + - 'config/initializers/google_api_client_patch.rb' + - 'config/initializers/jira.rb' + - 'config/initializers/kaminari_active_record_relation_methods_with_limit.rb' + - 'config/initializers/load_balancing.rb' + - 'config/initializers/remove_active_job_execute_callback.rb' + - 'config/initializers/seed_fu.rb' + - 'config/initializers/sidekiq.rb' + - 'config/initializers/stackprof.rb' + - 'config/initializers/validate_database_config.rb' + - 'config/initializers/wikicloth_redos_patch.rb' + - 'config/initializers/zz_metrics.rb' + - 'config/initializers_before_autoloader/002_sidekiq.rb' + - 'config/routes.rb' + - 'config/settings.rb' + - 'danger/database/Dangerfile' + - 'danger/pipeline/Dangerfile' + - 'danger/specs/Dangerfile' + - 'danger/z_metadata/Dangerfile' + - 'db/migrate/20210709221659_add_work_item_type_id_to_issue.rb' + - 'db/migrate/20210816095826_add_unique_index_on_dast_profile_to_dast_profile_schedules.rb' + - 'db/migrate/20210818061156_remove_project_profile_compound_index_from_dast_profile_schedules.rb' + - 'db/migrate/20210909184349_add_index_package_id_id_on_package_files.rb' + - 'db/migrate/20220324175325_add_key_data_to_secure_files.rb' + - 'db/post_migrate/20210505092746_create_partial_covering_index_for_pending_builds.rb' + - 'db/post_migrate/20210629101712_remove_deprecated_modsecurity_columns.rb' + - 'db/post_migrate/20210713042000_fix_ci_sources_pipelines_index_names.rb' + - 'db/post_migrate/20211021140426_remove_geo_upload_deprecated_fields.rb' + - 'db/post_migrate/20220128155814_fix_approval_rules_code_owners_rule_type_index.rb' + - 'db/post_migrate/20220131000001_schedule_trace_expiry_removal.rb' + - 'ee/app/controllers/admin/audit_logs_controller.rb' + - 'ee/app/controllers/admin/elasticsearch_controller.rb' + - 'ee/app/controllers/admin/emails_controller.rb' + - 'ee/app/controllers/admin/geo/application_controller.rb' + - 'ee/app/controllers/admin/geo/projects_controller.rb' + - 'ee/app/controllers/admin/geo/settings_controller.rb' + - 'ee/app/controllers/admin/push_rules_controller.rb' + - 'ee/app/controllers/concerns/credentials_inventory_actions.rb' + - 'ee/app/controllers/concerns/ee/membership_actions.rb' + - 'ee/app/controllers/concerns/group_invite_members.rb' + - 'ee/app/controllers/ee/admin/application_settings_controller.rb' + - 'ee/app/controllers/ee/groups/group_members_controller.rb' + - 'ee/app/controllers/ee/groups_controller.rb' + - 'ee/app/controllers/ee/projects/issues_controller.rb' + - 'ee/app/controllers/ee/projects/settings/operations_controller.rb' + - 'ee/app/controllers/ee/projects_controller.rb' + - 'ee/app/controllers/ee/root_controller.rb' + - 'ee/app/controllers/groups/billings_controller.rb' + - 'ee/app/controllers/groups/hooks_controller.rb' + - 'ee/app/controllers/groups/push_rules_controller.rb' + - 'ee/app/controllers/profiles/billings_controller.rb' + - 'ee/app/controllers/projects/integrations/zentao/issues_controller.rb' + - 'ee/app/controllers/projects/path_locks_controller.rb' + - 'ee/app/controllers/projects/push_rules_controller.rb' + - 'ee/app/controllers/projects/settings/slacks_controller.rb' + - 'ee/app/controllers/trials_controller.rb' + - 'ee/app/finders/ee/alert_management/alerts_finder.rb' + - 'ee/app/finders/iterations_finder.rb' + - 'ee/app/finders/merge_trains_finder.rb' + - 'ee/app/finders/security/pipeline_vulnerabilities_finder.rb' + - 'ee/app/finders/security/vulnerabilities_finder.rb' + - 'ee/app/graphql/ee/mutations/issues/create.rb' + - 'ee/app/graphql/ee/resolvers/base_issues_resolver.rb' + - 'ee/app/graphql/mutations/audit_events/external_audit_event_destinations/create.rb' + - 'ee/app/graphql/mutations/audit_events/external_audit_event_destinations/destroy.rb' + - 'ee/app/graphql/mutations/iterations/update.rb' + - 'ee/app/graphql/mutations/projects/set_locked.rb' + - 'ee/app/graphql/resolvers/analytics/devops_adoption/enabled_namespaces_resolver.rb' + - 'ee/app/graphql/resolvers/app_sec/dast/profile_resolver.rb' + - 'ee/app/graphql/resolvers/boards/epic_lists_resolver.rb' + - 'ee/app/graphql/resolvers/iterations/cadences_resolver.rb' + - 'ee/app/helpers/billing_plans_helper.rb' + - 'ee/app/helpers/ee/application_helper.rb' + - 'ee/app/helpers/ee/dashboard_helper.rb' + - 'ee/app/helpers/ee/environments_helper.rb' + - 'ee/app/helpers/ee/integrations_helper.rb' + - 'ee/app/helpers/ee/issues_helper.rb' + - 'ee/app/helpers/ee/labels_helper.rb' + - 'ee/app/helpers/ee/merge_requests_helper.rb' + - 'ee/app/helpers/ee/notes_helper.rb' + - 'ee/app/helpers/ee/personal_access_tokens_helper.rb' + - 'ee/app/helpers/ee/projects_helper.rb' + - 'ee/app/models/allowed_email_domain.rb' + - 'ee/app/models/app_sec/fuzzing/coverage/corpus.rb' + - 'ee/app/models/concerns/ee/protected_ref_access.rb' + - 'ee/app/models/concerns/elastic/application_versioned_search.rb' + - 'ee/app/models/concerns/geo/replicable_model.rb' + - 'ee/app/models/concerns/geo/verifiable_replicator.rb' + - 'ee/app/models/concerns/security/scan_execution_policy.rb' + - 'ee/app/models/dast_site_profile.rb' + - 'ee/app/models/ee/application_setting.rb' + - 'ee/app/models/ee/group_member.rb' + - 'ee/app/models/ee/issue.rb' + - 'ee/app/models/ee/iteration.rb' + - 'ee/app/models/ee/key.rb' + - 'ee/app/models/ee/list.rb' + - 'ee/app/models/ee/member.rb' + - 'ee/app/models/ee/milestone_release.rb' + - 'ee/app/models/ee/namespace.rb' + - 'ee/app/models/ee/namespace/root_storage_size.rb' + - 'ee/app/models/ee/project.rb' + - 'ee/app/models/ee/project_feature.rb' + - 'ee/app/models/ee/project_team.rb' + - 'ee/app/models/ee/user.rb' + - 'ee/app/models/ee/vulnerability.rb' + - 'ee/app/models/geo/project_registry.rb' + - 'ee/app/models/geo/tracking_base.rb' + - 'ee/app/models/incident_management/escalation_rule.rb' + - 'ee/app/models/ip_restriction.rb' + - 'ee/app/models/merge_requests/external_status_check.rb' + - 'ee/app/models/requirements_management/requirement.rb' + - 'ee/app/models/requirements_management/test_report.rb' + - 'ee/app/models/vulnerabilities/finding.rb' + - 'ee/app/presenters/dast/site_profile_presenter.rb' + - 'ee/app/presenters/ee/merge_request_presenter.rb' + - 'ee/app/serializers/ee/blob_entity.rb' + - 'ee/app/serializers/linked_epic_issue_entity.rb' + - 'ee/app/serializers/vulnerabilities/finding_serializer.rb' + - 'ee/app/services/analytics/cycle_analytics/aggregator_service.rb' + - 'ee/app/services/analytics/cycle_analytics/validations.rb' + - 'ee/app/services/app_sec/dast/profiles/build_config_service.rb' + - 'ee/app/services/app_sec/dast/profiles/create_associations_service.rb' + - 'ee/app/services/app_sec/dast/scan_configs/build_service.rb' + - 'ee/app/services/app_sec/dast/scanner_profiles/destroy_service.rb' + - 'ee/app/services/app_sec/dast/scanner_profiles/update_service.rb' + - 'ee/app/services/app_sec/dast/site_profile_secret_variables/create_or_update_service.rb' + - 'ee/app/services/app_sec/dast/site_profile_secret_variables/destroy_service.rb' + - 'ee/app/services/app_sec/dast/site_profiles/destroy_service.rb' + - 'ee/app/services/app_sec/dast/site_profiles/update_service.rb' + - 'ee/app/services/app_sec/fuzzing/api/ci_configuration_create_service.rb' + - 'ee/app/services/audit_events/runner_audit_event_service.rb' + - 'ee/app/services/auto_merge/add_to_merge_train_when_pipeline_succeeds_service.rb' + - 'ee/app/services/billable_members/destroy_service.rb' + - 'ee/app/services/boards/epic_boards/create_service.rb' + - 'ee/app/services/boards/epic_boards/update_service.rb' + - 'ee/app/services/boards/epics/create_service.rb' + - 'ee/app/services/ci/minutes/update_project_and_namespace_usage_service.rb' + - 'ee/app/services/ci/subscribe_bridge_service.rb' + - 'ee/app/services/compliance_management/frameworks/create_service.rb' + - 'ee/app/services/compliance_management/merge_requests/create_compliance_violations_service.rb' + - 'ee/app/services/deployments/auto_rollback_service.rb' + - 'ee/app/services/dora/aggregate_metrics_service.rb' + - 'ee/app/services/ee/alert_management/alerts/update_service.rb' + - 'ee/app/services/ee/allowed_email_domains/update_service.rb' + - 'ee/app/services/ee/audit_event_service.rb' + - 'ee/app/services/ee/boards/base_service.rb' + - 'ee/app/services/ee/boards/issues/move_service.rb' + - 'ee/app/services/ee/commits/create_service.rb' + - 'ee/app/services/ee/deploy_keys/create_service.rb' + - 'ee/app/services/ee/groups/update_service.rb' + - 'ee/app/services/ee/ip_restrictions/update_service.rb' + - 'ee/app/services/ee/issuable_base_service.rb' + - 'ee/app/services/ee/issues/base_service.rb' + - 'ee/app/services/ee/issues/clone_service.rb' + - 'ee/app/services/ee/issues/move_service.rb' + - 'ee/app/services/ee/merge_requests/base_service.rb' + - 'ee/app/services/ee/merge_requests/refresh_service.rb' + - 'ee/app/services/ee/merge_requests/update_service.rb' + - 'ee/app/services/ee/milestones/update_service.rb' + - 'ee/app/services/ee/notes/update_service.rb' + - 'ee/app/services/ee/projects/create_service.rb' + - 'ee/app/services/ee/projects/destroy_service.rb' + - 'ee/app/services/ee/projects/gitlab_projects_import_service.rb' + - 'ee/app/services/ee/protected_branches/create_service.rb' + - 'ee/app/services/ee/resource_events/change_labels_service.rb' + - 'ee/app/services/ee/todo_service.rb' + - 'ee/app/services/ee/users/update_service.rb' + - 'ee/app/services/elastic/indexing_control_service.rb' + - 'ee/app/services/elastic/process_bookkeeping_service.rb' + - 'ee/app/services/epic_links/create_service.rb' + - 'ee/app/services/epic_links/update_service.rb' + - 'ee/app/services/epics/base_service.rb' + - 'ee/app/services/epics/create_service.rb' + - 'ee/app/services/epics/update_dates_service.rb' + - 'ee/app/services/epics/update_service.rb' + - 'ee/app/services/external_status_checks/create_service.rb' + - 'ee/app/services/geo/metrics_update_service.rb' + - 'ee/app/services/geo/move_repository_service.rb' + - 'ee/app/services/geo/prune_event_log_service.rb' + - 'ee/app/services/geo/repository_verification_primary_service.rb' + - 'ee/app/services/geo/repository_verification_secondary_service.rb' + - 'ee/app/services/gitlab_subscriptions/plan_upgrade_service.rb' + - 'ee/app/services/groups/memberships/export_service.rb' + - 'ee/app/services/groups/update_repository_storage_service.rb' + - 'ee/app/services/incident_management/incidents/upload_metric_service.rb' + - 'ee/app/services/iterations/cadences/create_iterations_in_advance_service.rb' + - 'ee/app/services/iterations/cadences/create_service.rb' + - 'ee/app/services/iterations/cadences/destroy_service.rb' + - 'ee/app/services/iterations/cadences/update_service.rb' + - 'ee/app/services/iterations/delete_service.rb' + - 'ee/app/services/merge_requests/update_blocks_service.rb' + - 'ee/app/services/merge_trains/refresh_merge_request_service.rb' + - 'ee/app/services/projects/mark_for_deletion_service.rb' + - 'ee/app/services/projects/slack_application_install_service.rb' + - 'ee/app/services/projects/update_mirror_service.rb' + - 'ee/app/services/resource_events/change_weight_service.rb' + - 'ee/app/services/security/dependency_list_service.rb' + - 'ee/app/services/security/orchestration/assign_service.rb' + - 'ee/app/services/security/security_orchestration_policies/on_demand_scan_pipeline_configuration_service.rb' + - 'ee/app/services/security/security_orchestration_policies/policy_configuration_validation_service.rb' + - 'ee/app/services/security/security_orchestration_policies/process_policy_service.rb' + - 'ee/app/services/security/security_orchestration_policies/project_create_service.rb' + - 'ee/app/services/security/security_orchestration_policies/validate_policy_service.rb' + - 'ee/app/services/slash_commands/global_slack_handler.rb' + - 'ee/app/services/start_pull_mirroring_service.rb' + - 'ee/app/services/system_notes/epics_service.rb' + - 'ee/app/services/timebox_report_service.rb' + - 'ee/app/services/users/captcha_challenge_service.rb' + - 'ee/app/services/vulnerabilities/base_service.rb' + - 'ee/app/services/vulnerabilities/create_service.rb' + - 'ee/app/services/vulnerabilities/historical_statistics/adjustment_service.rb' + - 'ee/app/services/vulnerabilities/statistics/adjustment_service.rb' + - 'ee/app/services/vulnerability_external_issue_links/create_service.rb' + - 'ee/app/services/vulnerability_feedback/create_service.rb' + - 'ee/app/services/vulnerability_feedback/destroy_service.rb' + - 'ee/app/services/vulnerability_feedback_module/update_service.rb' + - 'ee/app/validators/host_validator.rb' + - 'ee/app/workers/app_sec/dast/profile_schedule_worker.rb' + - 'ee/app/workers/audit_events/audit_event_streaming_worker.rb' + - 'ee/app/workers/concerns/elastic/migration_helper.rb' + - 'ee/app/workers/ee/ci/build_finished_worker.rb' + - 'ee/app/workers/ee/post_receive.rb' + - 'ee/app/workers/epics/new_epic_issue_worker.rb' + - 'ee/app/workers/geo/secondary/registry_consistency_worker.rb' + - 'ee/app/workers/security/orchestration_policy_rule_schedule_namespace_worker.rb' + - 'ee/db/geo/migrate/20170627195211_add_index_to_project_registry.rb' + - 'ee/db/geo/migrate/20180402170913_add_missing_on_primary_to_job_artifact_registry..rb' + - 'ee/lib/analytics/devops_adoption/snapshot_calculator.rb' + - 'ee/lib/api/epics.rb' + - 'ee/lib/api/merge_request_approval_rules.rb' + - 'ee/lib/api/protected_environments.rb' + - 'ee/lib/audit/details.rb' + - 'ee/lib/ee/api/entities/epic.rb' + - 'ee/lib/ee/api/entities/experiment.rb' + - 'ee/lib/ee/api/geo.rb' + - 'ee/lib/ee/api/groups.rb' + - 'ee/lib/ee/api/helpers/award_emoji.rb' + - 'ee/lib/ee/api/helpers/variables_helpers.rb' + - 'ee/lib/ee/api/internal/base.rb' + - 'ee/lib/ee/api/merge_request_approvals.rb' + - 'ee/lib/ee/api/protected_branches.rb' + - 'ee/lib/ee/api/settings.rb' + - 'ee/lib/ee/audit/project_changes_auditor.rb' + - 'ee/lib/ee/banzai/filter/references/iteration_reference_filter.rb' + - 'ee/lib/ee/container_registry/client.rb' + - 'ee/lib/ee/gitlab/auth/ldap/access.rb' + - 'ee/lib/ee/gitlab/auth/ldap/group.rb' + - 'ee/lib/ee/gitlab/background_migration/drop_invalid_remediations.rb' + - 'ee/lib/ee/gitlab/background_migration/migrate_approver_to_approval_rules_check_progress.rb' + - 'ee/lib/ee/gitlab/checks/diff_check.rb' + - 'ee/lib/ee/gitlab/checks/push_rules/tag_check.rb' + - 'ee/lib/ee/gitlab/ci/reports/security/reports.rb' + - 'ee/lib/ee/gitlab/cleanup/orphan_job_artifact_files.rb' + - 'ee/lib/ee/gitlab/git_access_wiki.rb' + - 'ee/lib/ee/gitlab/quick_actions/epic_actions.rb' + - 'ee/lib/ee/gitlab/quick_actions/issue_actions.rb' + - 'ee/lib/ee/gitlab/repository_size_checker.rb' + - 'ee/lib/ee/gitlab/scim/deprovision_service.rb' + - 'ee/lib/ee/gitlab/usage_data.rb' + - 'ee/lib/ee/sidebars/groups/menus/settings_menu.rb' + - 'ee/lib/ee/sidebars/projects/menus/analytics_menu.rb' + - 'ee/lib/ee/sidebars/projects/menus/security_compliance_menu.rb' + - 'ee/lib/elastic/latest/custom_language_analyzers.rb' + - 'ee/lib/elastic/latest/git_class_proxy.rb' + - 'ee/lib/elastic/latest/git_instance_proxy.rb' + - 'ee/lib/gitlab/auth/group_saml/session_enforcer.rb' + - 'ee/lib/gitlab/authority_analyzer.rb' + - 'ee/lib/gitlab/ci/reports/dependency_list/dependency.rb' + - 'ee/lib/gitlab/ci/reports/dependency_list/report.rb' + - 'ee/lib/gitlab/code_owners/file.rb' + - 'ee/lib/gitlab/code_owners/groups_loader.rb' + - 'ee/lib/gitlab/custom_file_templates.rb' + - 'ee/lib/gitlab/elastic/indexer.rb' + - 'ee/lib/gitlab/geo/git_ssh_proxy.rb' + - 'ee/lib/gitlab/geo/health_check.rb' + - 'ee/lib/gitlab/geo/log_cursor/daemon.rb' + - 'ee/lib/gitlab/geo/log_cursor/events/repository_deleted_event.rb' + - 'ee/lib/gitlab/geo/oauth/logout_token.rb' + - 'ee/lib/gitlab/geo/replication/base_transfer.rb' + - 'ee/lib/gitlab/geo/replication/blob_downloader.rb' + - 'ee/lib/gitlab/geo/replicator.rb' + - 'ee/lib/gitlab/graphql/aggregations/epics/lazy_epic_aggregate.rb' + - 'ee/lib/gitlab/graphql/aggregations/issues/lazy_block_aggregate.rb' + - 'ee/lib/gitlab/graphql/aggregations/security_orchestration_policies/lazy_dast_profile_aggregate.rb' + - 'ee/lib/gitlab/graphql/aggregations/vulnerabilities/lazy_user_notes_count_aggregate.rb' + - 'ee/lib/gitlab/graphql/aggregations/vulnerability_statistics/lazy_aggregate.rb' + - 'ee/lib/gitlab/graphql/loaders/bulk_epic_aggregate_loader.rb' + - 'ee/lib/gitlab/ip_restriction/enforcer.rb' + - 'ee/lib/gitlab/path_locks_finder.rb' + - 'ee/lib/gitlab/sitemaps/generator.rb' + - 'ee/lib/gitlab/usage/metrics/instrumentations/count_ci_builds_metric.rb' + - 'ee/lib/gitlab/usage/metrics/instrumentations/count_users_creating_ci_builds_metric.rb' + - 'ee/lib/gitlab/usage/metrics/instrumentations/license_metric.rb' + - 'ee/lib/omni_auth/strategies/group_saml.rb' + - 'ee/lib/pseudonymizer/dumper.rb' + - 'ee/lib/pseudonymizer/uploader.rb' + - 'ee/lib/sidebars/groups/menus/administration_menu.rb' + - 'ee/lib/sidebars/groups/menus/analytics_menu.rb' + - 'ee/lib/sidebars/groups/menus/security_compliance_menu.rb' + - 'ee/lib/tasks/geo.rake' + - 'ee/lib/tasks/gitlab/db.rake' + - 'ee/lib/tasks/gitlab/geo.rake' + - 'ee/lib/tasks/gitlab/seed/insights.rake' + - 'ee/spec/controllers/subscriptions_controller_spec.rb' + - 'ee/spec/factories/iterations.rb' + - 'ee/spec/factories/vulnerabilities/external_issue_links.rb' + - 'ee/spec/features/boards/user_visits_board_spec.rb' + - 'ee/spec/finders/custom_project_templates_finder_spec.rb' + - 'ee/spec/finders/security/findings_finder_spec.rb' + - 'ee/spec/finders/security/pipeline_vulnerabilities_finder_spec.rb' + - 'ee/spec/graphql/types/pipeline_security_report_finding_type_spec.rb' + - 'ee/spec/helpers/ee/users/callouts_helper_spec.rb' + - 'ee/spec/lib/gitlab/analytics/cycle_analytics/data_collector_spec.rb' + - 'ee/spec/lib/gitlab/elastic/project_search_results_spec.rb' + - 'ee/spec/lib/gitlab/elastic/search_results_spec.rb' + - 'ee/spec/lib/gitlab/geo/replication/blob_downloader_spec.rb' + - 'ee/spec/models/concerns/elastic/note_spec.rb' + - 'ee/spec/models/geo_node_status_spec.rb' + - 'ee/spec/models/push_rule_spec.rb' + - 'ee/spec/services/licenses/destroy_service_spec.rb' + - 'ee/spec/services/merge_requests/merge_service_spec.rb' + - 'ee/spec/services/merge_trains/create_pipeline_service_spec.rb' + - 'ee/spec/services/merge_trains/refresh_merge_request_service_spec.rb' + - 'ee/spec/support/helpers/ee/ldap_helpers.rb' + - 'ee/spec/support/helpers/feature_approval_helper.rb' + - 'ee/spec/support/helpers/search_results_helpers.rb' + - 'ee/spec/support/http_io/http_io_helpers.rb' + - 'ee/spec/support/shared_examples/requests/api/graphql/geo/registries_shared_examples.rb' + - 'ee/spec/views/layouts/header/help_dropdown/_cross_stage_fdm.html.haml_spec.rb' + - 'ee/spec/views/shared/access_tokens/_table.html.haml_spec.rb' + - 'ee/spec/workers/elastic/migration_worker_spec.rb' + - 'lib/api/api_guard.rb' + - 'lib/api/boards_responses.rb' + - 'lib/api/branches.rb' + - 'lib/api/ci/helpers/runner.rb' + - 'lib/api/ci/pipeline_schedules.rb' + - 'lib/api/ci/runner.rb' + - 'lib/api/ci/runners.rb' + - 'lib/api/ci/secure_files.rb' + - 'lib/api/commits.rb' + - 'lib/api/debian_project_packages.rb' + - 'lib/api/deployments.rb' + - 'lib/api/discussions.rb' + - 'lib/api/entities/feature.rb' + - 'lib/api/entities/member_access.rb' + - 'lib/api/entities/project_import_status.rb' + - 'lib/api/feature_flags.rb' + - 'lib/api/feature_flags_user_lists.rb' + - 'lib/api/files.rb' + - 'lib/api/groups.rb' + - 'lib/api/helm_packages.rb' + - 'lib/api/helpers.rb' + - 'lib/api/helpers/common_helpers.rb' + - 'lib/api/helpers/file_upload_helpers.rb' + - 'lib/api/helpers/headers_helpers.rb' + - 'lib/api/helpers/label_helpers.rb' + - 'lib/api/helpers/members_helpers.rb' + - 'lib/api/helpers/packages/basic_auth_helpers.rb' + - 'lib/api/helpers/packages/conan/api_helpers.rb' + - 'lib/api/helpers/packages/dependency_proxy_helpers.rb' + - 'lib/api/helpers/projects_helpers.rb' + - 'lib/api/helpers/users_helpers.rb' + - 'lib/api/helpers/version.rb' + - 'lib/api/internal/base.rb' + - 'lib/api/internal/container_registry/migration.rb' + - 'lib/api/invitations.rb' + - 'lib/api/maven_packages.rb' + - 'lib/api/merge_requests.rb' + - 'lib/api/nuget_project_packages.rb' + - 'lib/api/pages_domains.rb' + - 'lib/api/project_clusters.rb' + - 'lib/api/project_snippets.rb' + - 'lib/api/projects.rb' + - 'lib/api/projects_relation_builder.rb' + - 'lib/api/protected_branches.rb' + - 'lib/api/pypi_packages.rb' + - 'lib/api/remote_mirrors.rb' + - 'lib/api/repositories.rb' + - 'lib/api/rubygem_packages.rb' + - 'lib/api/settings.rb' + - 'lib/api/snippets.rb' + - 'lib/api/tags.rb' + - 'lib/api/terraform/modules/v1/packages.rb' + - 'lib/api/users.rb' + - 'lib/backup/gitaly_backup.rb' + - 'lib/backup/manager.rb' + - 'lib/banzai/filter/base_sanitization_filter.rb' + - 'lib/banzai/filter/external_link_filter.rb' + - 'lib/banzai/filter/gollum_tags_filter.rb' + - 'lib/banzai/filter/markdown_post_escape_filter.rb' + - 'lib/banzai/filter/playable_link_filter.rb' + - 'lib/banzai/filter/references/commit_reference_filter.rb' + - 'lib/banzai/filter/references/label_reference_filter.rb' + - 'lib/banzai/filter/references/milestone_reference_filter.rb' + - 'lib/banzai/filter/repository_link_filter.rb' + - 'lib/banzai/filter/upload_link_filter.rb' + - 'lib/banzai/filter/wiki_link_filter.rb' + - 'lib/banzai/object_renderer.rb' + - 'lib/banzai/reference_parser/base_parser.rb' + - 'lib/banzai/renderer.rb' + - 'lib/bitbucket_server/representation/pull_request_comment.rb' + - 'lib/bulk_imports/clients/http.rb' + - 'lib/bulk_imports/common/pipelines/uploads_pipeline.rb' + - 'lib/bulk_imports/groups/loaders/group_loader.rb' + - 'lib/bulk_imports/projects/transformers/project_attributes_transformer.rb' + - 'lib/container_registry/base_client.rb' + - 'lib/container_registry/client.rb' + - 'lib/feature/definition.rb' + - 'lib/file_size_validator.rb' + - 'lib/generators/gitlab/usage_metric_generator.rb' + - 'lib/gitlab/analytics/cycle_analytics/aggregated/records_fetcher.rb' + - 'lib/gitlab/analytics/cycle_analytics/request_params.rb' + - 'lib/gitlab/auth.rb' + - 'lib/gitlab/auth/auth_finders.rb' + - 'lib/gitlab/auth/ldap/adapter.rb' + - 'lib/gitlab/auth/ldap/authentication.rb' + - 'lib/gitlab/authorized_keys.rb' + - 'lib/gitlab/background_migration/fix_vulnerability_occurrences_with_hashes_as_raw_metadata.rb' + - 'lib/gitlab/background_migration/migrate_merge_request_diff_commit_users.rb' + - 'lib/gitlab/background_migration/project_namespaces/backfill_project_namespaces.rb' + - 'lib/gitlab/background_migration/remove_all_trace_expiration_dates.rb' + - 'lib/gitlab/background_migration/reset_duplicate_ci_runners_token_encrypted_values_on_projects.rb' + - 'lib/gitlab/bare_repository_import/importer.rb' + - 'lib/gitlab/bare_repository_import/repository.rb' + - 'lib/gitlab/bullet/exclusions.rb' + - 'lib/gitlab/cache/ci/project_pipeline_status.rb' + - 'lib/gitlab/changelog/config.rb' + - 'lib/gitlab/checks/branch_check.rb' + - 'lib/gitlab/checks/diff_check.rb' + - 'lib/gitlab/checks/lfs_check.rb' + - 'lib/gitlab/checks/matching_merge_request.rb' + - 'lib/gitlab/checks/push_check.rb' + - 'lib/gitlab/checks/push_file_count_check.rb' + - 'lib/gitlab/ci/ansi2html.rb' + - 'lib/gitlab/ci/ansi2json/converter.rb' + - 'lib/gitlab/ci/ansi2json/style.rb' + - 'lib/gitlab/ci/artifact_file_reader.rb' + - 'lib/gitlab/ci/build/artifacts/metadata.rb' + - 'lib/gitlab/ci/build/artifacts/path.rb' + - 'lib/gitlab/ci/build/policy/kubernetes.rb' + - 'lib/gitlab/ci/config.rb' + - 'lib/gitlab/ci/config/entry/caches.rb' + - 'lib/gitlab/ci/config/entry/environment.rb' + - 'lib/gitlab/ci/config/entry/includes.rb' + - 'lib/gitlab/ci/config/entry/job.rb' + - 'lib/gitlab/ci/config/entry/jobs.rb' + - 'lib/gitlab/ci/config/entry/needs.rb' + - 'lib/gitlab/ci/config/entry/policy.rb' + - 'lib/gitlab/ci/config/entry/processable.rb' + - 'lib/gitlab/ci/config/entry/product/matrix.rb' + - 'lib/gitlab/ci/config/extendable/entry.rb' + - 'lib/gitlab/ci/config/external/file/base.rb' + - 'lib/gitlab/ci/config/external/file/template.rb' + - 'lib/gitlab/ci/config/external/mapper.rb' + - 'lib/gitlab/ci/config/normalizer.rb' + - 'lib/gitlab/ci/parsers/coverage/sax_document.rb' + - 'lib/gitlab/ci/parsers/security/common.rb' + - 'lib/gitlab/ci/parsers/security/validators/schema_validator.rb' + - 'lib/gitlab/ci/pipeline/chain/populate.rb' + - 'lib/gitlab/ci/pipeline/chain/seed.rb' + - 'lib/gitlab/ci/pipeline/chain/validate/abilities.rb' + - 'lib/gitlab/ci/pipeline/chain/validate/repository.rb' + - 'lib/gitlab/ci/pipeline/expression/lexeme/base.rb' + - 'lib/gitlab/ci/pipeline/expression/lexer.rb' + - 'lib/gitlab/ci/pipeline/seed/build.rb' + - 'lib/gitlab/ci/reports/security/finding.rb' + - 'lib/gitlab/ci/runner/backoff.rb' + - 'lib/gitlab/ci/runner_instructions.rb' + - 'lib/gitlab/ci/runner_releases.rb' + - 'lib/gitlab/ci/runner_upgrade_check.rb' + - 'lib/gitlab/ci/status/composite.rb' + - 'lib/gitlab/ci/trace.rb' + - 'lib/gitlab/ci/trace/chunked_io.rb' + - 'lib/gitlab/ci/trace/metrics.rb' + - 'lib/gitlab/ci/variables/builder.rb' + - 'lib/gitlab/ci/yaml_processor.rb' + - 'lib/gitlab/config/entry/attributable.rb' + - 'lib/gitlab/config/entry/simplifiable.rb' + - 'lib/gitlab/config/entry/validatable.rb' + - 'lib/gitlab/config/entry/validators.rb' + - 'lib/gitlab/conflict/file.rb' + - 'lib/gitlab/content_security_policy/config_loader.rb' + - 'lib/gitlab/cross_project_access/check_info.rb' + - 'lib/gitlab/data_builder/deployment.rb' + - 'lib/gitlab/database/as_with_materialized.rb' + - 'lib/gitlab/database/background_migration/batched_job.rb' + - 'lib/gitlab/database/background_migration/batched_migration_wrapper.rb' + - 'lib/gitlab/database/batch_counter.rb' + - 'lib/gitlab/database/migration_helpers.rb' + - 'lib/gitlab/database/migration_helpers/cascading_namespace_settings.rb' + - 'lib/gitlab/database/migration_helpers/v2.rb' + - 'lib/gitlab/database/migrations/background_migration_helpers.rb' + - 'lib/gitlab/database/migrations/batched_background_migration_helpers.rb' + - 'lib/gitlab/database/partitioning/detached_partition_dropper.rb' + - 'lib/gitlab/database/partitioning/monthly_strategy.rb' + - 'lib/gitlab/database/partitioning/time_partition.rb' + - 'lib/gitlab/database/postgres_foreign_key.rb' + - 'lib/gitlab/database/postgres_index.rb' + - 'lib/gitlab/database/postgres_partition.rb' + - 'lib/gitlab/database/postgres_partitioned_table.rb' + - 'lib/gitlab/database/reindexing.rb' + - 'lib/gitlab/database/reindexing/reindex_concurrently.rb' + - 'lib/gitlab/database/transaction/observer.rb' + - 'lib/gitlab/database/with_lock_retries.rb' + - 'lib/gitlab/diff/custom_diff.rb' + - 'lib/gitlab/diff/formatters/base_formatter.rb' + - 'lib/gitlab/diff/rendered/notebook/diff_file.rb' + - 'lib/gitlab/elasticsearch/logs/lines.rb' + - 'lib/gitlab/email/handler/service_desk_handler.rb' + - 'lib/gitlab/email/message/in_product_marketing/base.rb' + - 'lib/gitlab/email/message/repository_push.rb' + - 'lib/gitlab/email/receiver.rb' + - 'lib/gitlab/email/reply_parser.rb' + - 'lib/gitlab/encrypted_command_base.rb' + - 'lib/gitlab/encrypted_configuration.rb' + - 'lib/gitlab/endpoint_attributes/config.rb' + - 'lib/gitlab/error_tracking.rb' + - 'lib/gitlab/error_tracking/context_payload_generator.rb' + - 'lib/gitlab/error_tracking/processor/sidekiq_processor.rb' + - 'lib/gitlab/etag_caching/middleware.rb' + - 'lib/gitlab/event_store/event.rb' + - 'lib/gitlab/exception_log_formatter.rb' + - 'lib/gitlab/external_authorization/client.rb' + - 'lib/gitlab/fogbugz_import/importer.rb' + - 'lib/gitlab/gfm/reference_rewriter.rb' + - 'lib/gitlab/git/compare.rb' + - 'lib/gitlab/git/diff_collection.rb' + - 'lib/gitlab/git/merge_base.rb' + - 'lib/gitlab/git/push.rb' + - 'lib/gitlab/git/repository.rb' + - 'lib/gitlab/git/rugged_impl/tree.rb' + - 'lib/gitlab/git_access.rb' + - 'lib/gitlab/git_access_project.rb' + - 'lib/gitlab/git_access_snippet.rb' + - 'lib/gitlab/git_access_wiki.rb' + - 'lib/gitlab/gitaly_client.rb' + - 'lib/gitlab/gitaly_client/blob_service.rb' + - 'lib/gitlab/gitaly_client/operation_service.rb' + - 'lib/gitlab/gitaly_client/repository_service.rb' + - 'lib/gitlab/github_import/client.rb' + - 'lib/gitlab/github_import/importer/pull_request_review_importer.rb' + - 'lib/gitlab/github_import/representation/issue.rb' + - 'lib/gitlab/gitlab_import/client.rb' + - 'lib/gitlab/gitlab_import/importer.rb' + - 'lib/gitlab/golang.rb' + - 'lib/gitlab/graphql/pagination/keyset/conditions/base_condition.rb' + - 'lib/gitlab/graphql/pagination/keyset/conditions/not_null_condition.rb' + - 'lib/gitlab/graphql/pagination/keyset/connection.rb' + - 'lib/gitlab/graphql/pagination/keyset/generic_keyset_pagination.rb' + - 'lib/gitlab/graphql/pagination/keyset/order_info.rb' + - 'lib/gitlab/graphql/pagination/keyset/query_builder.rb' + - 'lib/gitlab/graphql/queries.rb' + - 'lib/gitlab/hashed_storage/rake_helper.rb' + - 'lib/gitlab/hotlinking_detector.rb' + - 'lib/gitlab/http_io.rb' + - 'lib/gitlab/i18n/po_linter.rb' + - 'lib/gitlab/import/import_failure_service.rb' + - 'lib/gitlab/import/merge_request_creator.rb' + - 'lib/gitlab/import_export/after_export_strategies/web_upload_strategy.rb' + - 'lib/gitlab/import_export/base/relation_factory.rb' + - 'lib/gitlab/import_export/fast_hash_serializer.rb' + - 'lib/gitlab/import_export/file_importer.rb' + - 'lib/gitlab/import_export/group/tree_restorer.rb' + - 'lib/gitlab/import_export/json/legacy_writer.rb' + - 'lib/gitlab/import_export/merge_request_parser.rb' + - 'lib/gitlab/import_export/project/export_task.rb' + - 'lib/gitlab/import_export/project/tree_restorer.rb' + - 'lib/gitlab/instrumentation/redis_interceptor.rb' + - 'lib/gitlab/jira_import.rb' + - 'lib/gitlab/jira_import/base_importer.rb' + - 'lib/gitlab/legacy_github_import/client.rb' + - 'lib/gitlab/legacy_github_import/importer.rb' + - 'lib/gitlab/legacy_github_import/issuable_formatter.rb' + - 'lib/gitlab/legacy_github_import/project_creator.rb' + - 'lib/gitlab/mail_room.rb' + - 'lib/gitlab/mail_room/authenticator.rb' + - 'lib/gitlab/manifest_import/manifest.rb' + - 'lib/gitlab/marginalia.rb' + - 'lib/gitlab/markdown_cache/field_data.rb' + - 'lib/gitlab/metrics/dashboard/finder.rb' + - 'lib/gitlab/metrics/dashboard/importer.rb' + - 'lib/gitlab/metrics/dashboard/stages/cluster_endpoint_inserter.rb' + - 'lib/gitlab/metrics/dashboard/stages/metric_endpoint_inserter.rb' + - 'lib/gitlab/metrics/dashboard/stages/variable_endpoint_inserter.rb' + - 'lib/gitlab/metrics/methods.rb' + - 'lib/gitlab/metrics/rails_slis.rb' + - 'lib/gitlab/metrics/web_transaction.rb' + - 'lib/gitlab/middleware/compressed_json.rb' + - 'lib/gitlab/middleware/multipart.rb' + - 'lib/gitlab/middleware/same_site_cookies.rb' + - 'lib/gitlab/object_hierarchy.rb' + - 'lib/gitlab/omniauth_initializer.rb' + - 'lib/gitlab/pagination/keyset/in_operator_optimization/query_builder.rb' + - 'lib/gitlab/patch/database_config.rb' + - 'lib/gitlab/patch/prependable.rb' + - 'lib/gitlab/popen.rb' + - 'lib/gitlab/query_limiting/active_support_subscriber.rb' + - 'lib/gitlab/quick_actions/command_definition.rb' + - 'lib/gitlab/quick_actions/extractor.rb' + - 'lib/gitlab/quick_actions/issuable_actions.rb' + - 'lib/gitlab/quick_actions/issue_and_merge_request_actions.rb' + - 'lib/gitlab/rack_attack.rb' + - 'lib/gitlab/redis/wrapper.rb' + - 'lib/gitlab/runtime.rb' + - 'lib/gitlab/sanitizers/exif.rb' + - 'lib/gitlab/sanitizers/svg.rb' + - 'lib/gitlab/search/params.rb' + - 'lib/gitlab/search_context.rb' + - 'lib/gitlab/search_results.rb' + - 'lib/gitlab/shell.rb' + - 'lib/gitlab/sidekiq_config.rb' + - 'lib/gitlab/sidekiq_config/cli_methods.rb' + - 'lib/gitlab/sidekiq_config/worker_router.rb' + - 'lib/gitlab/sidekiq_middleware/duplicate_jobs/strategies/deduplicates_when_scheduling.rb' + - 'lib/gitlab/sidekiq_middleware/extra_done_log_metadata.rb' + - 'lib/gitlab/sidekiq_middleware/server_metrics.rb' + - 'lib/gitlab/slash_commands/presenters/issue_show.rb' + - 'lib/gitlab/suggestions/suggestion_set.rb' + - 'lib/gitlab/template/gitlab_ci_yml_template.rb' + - 'lib/gitlab/template_parser/eval_state.rb' + - 'lib/gitlab/untrusted_regexp.rb' + - 'lib/gitlab/url_blocker.rb' + - 'lib/gitlab/usage/metrics/aggregates/aggregate.rb' + - 'lib/gitlab/usage_data.rb' + - 'lib/gitlab/usage_data_counters/base_counter.rb' + - 'lib/gitlab/usage_data_counters/hll_redis_counter.rb' + - 'lib/gitlab/utils.rb' + - 'lib/gitlab/utils/delegator_override.rb' + - 'lib/gitlab/utils/override.rb' + - 'lib/gitlab/view/presenter/delegated.rb' + - 'lib/google_api/auth.rb' + - 'lib/mattermost/client.rb' + - 'lib/mattermost/session.rb' + - 'lib/microsoft_teams/notifier.rb' + - 'lib/sidebars/groups/menus/packages_registries_menu.rb' + - 'lib/sidebars/menu.rb' + - 'lib/sidebars/projects/menus/ci_cd_menu.rb' + - 'lib/sidebars/projects/menus/packages_registries_menu.rb' + - 'lib/sidebars/projects/menus/security_compliance_menu.rb' + - 'lib/sidebars/projects/menus/settings_menu.rb' + - 'lib/sidebars/projects/panel.rb' + - 'lib/system_check/app/systemd_unit_files_or_init_script_up_to_date_check.rb' + - 'lib/system_check/init_helpers.rb' + - 'lib/tasks/cleanup.rake' + - 'lib/tasks/eslint.rake' + - 'lib/tasks/gitlab/assets.rake' + - 'lib/tasks/gitlab/cleanup.rake' + - 'lib/tasks/gitlab/info.rake' + - 'lib/tasks/gitlab/packages/migrate.rake' + - 'lib/tasks/gitlab/seed.rake' + - 'lib/tasks/gitlab/shell.rake' + - 'lib/tasks/gitlab/sidekiq.rake' + - 'lib/tasks/gitlab/snippets.rake' + - 'lib/tasks/gitlab/storage.rake' + - 'lib/tasks/gitlab/update_templates.rake' + - 'qa/qa/ee/page/merge_request/show.rb' + - 'qa/qa/ee/resource/settings/elasticsearch.rb' + - 'qa/qa/flow/sign_up.rb' + - 'qa/qa/git/repository.rb' + - 'qa/qa/page/component/design_management.rb' + - 'qa/qa/page/component/select2.rb' + - 'qa/qa/page/component/snippet.rb' + - 'qa/qa/page/element.rb' + - 'qa/qa/page/mattermost/login.rb' + - 'qa/qa/page/page_concern.rb' + - 'qa/qa/page/project/web_ide/edit.rb' + - 'qa/qa/page/view.rb' + - 'qa/qa/resource/registry_repository.rb' + - 'qa/qa/resource/repository/push.rb' + - 'qa/qa/resource/reusable_collection.rb' + - 'qa/qa/resource/runner.rb' + - 'qa/qa/resource/snippet.rb' + - 'qa/qa/runtime/application_settings.rb' + - 'qa/qa/runtime/browser.rb' + - 'qa/qa/runtime/gpg.rb' + - 'qa/qa/runtime/ip_address.rb' + - 'qa/qa/scenario/bootable.rb' + - 'qa/qa/scenario/template.rb' + - 'qa/qa/service/docker_run/gitlab_runner.rb' + - 'qa/qa/service/docker_run/jenkins.rb' + - 'qa/qa/service/praefect_manager.rb' + - 'qa/qa/specs/features/api/3_create/gitaly/distributed_reads_spec.rb' + - 'qa/qa/specs/features/browser_ui/3_create/merge_request/merge_when_pipeline_succeeds_spec.rb' + - 'qa/qa/specs/features/browser_ui/3_create/web_ide/web_terminal_spec.rb' + - 'qa/qa/specs/features/browser_ui/5_package/package_registry/nuget/nuget_group_level_spec.rb' + - 'qa/qa/specs/features/browser_ui/5_package/package_registry/nuget/nuget_project_level_spec.rb' + - 'qa/qa/specs/features/ee/api/9_enablement/elasticsearch/advanced_global_advanced_syntax_search_spec.rb' + - 'qa/qa/specs/features/ee/api/9_enablement/elasticsearch/elasticsearch_api_spec.rb' + - 'qa/qa/specs/features/ee/api/9_enablement/elasticsearch/index_tests/issues_index/issue_index_spec.rb' + - 'qa/qa/specs/features/ee/api/9_enablement/elasticsearch/index_tests/main_index/blob_index_spec.rb' + - 'qa/qa/specs/features/ee/api/9_enablement/elasticsearch/index_tests/merge_request_index/merge_request_index_spec.rb' + - 'qa/qa/specs/features/ee/api/9_enablement/elasticsearch/index_tests/notes_index/note_index_spec.rb' + - 'qa/qa/specs/features/ee/api/9_enablement/elasticsearch/nightly_elasticsearch_test_spec.rb' + - 'qa/qa/specs/features/ee/browser_ui/12_geo/geo_replication_maven_package_spec.rb' + - 'qa/qa/specs/features/ee/browser_ui/1_manage/group/group_ldap_sync_spec.rb' + - 'qa/qa/specs/features/ee/browser_ui/1_manage/project/project_audit_logs_spec.rb' + - 'qa/qa/specs/helpers/context_selector.rb' + - 'qa/qa/specs/parallel_runner.rb' + - 'qa/qa/support/loglinking.rb' + - 'qa/qa/support/page_error_checker.rb' + - 'qa/qa/support/wait_for_requests.rb' + - 'qa/qa/tools/delete_projects.rb' + - 'qa/qa/tools/generate_perf_testdata.rb' + - 'qa/qa/tools/test_resources_handler.rb' + - 'rubocop/cop/api/grape_array_missing_coerce.rb' + - 'rubocop/cop/avoid_keyword_arguments_in_sidekiq_workers.rb' + - 'rubocop/cop/gitlab/event_store_subscriber.rb' + - 'rubocop/cop/gitlab/keys_first_and_values_first.rb' + - 'rubocop/cop/gitlab/mark_used_feature_flags.rb' + - 'rubocop/cop/gitlab/policy_rule_boolean.rb' + - 'rubocop/cop/ignored_columns.rb' + - 'rubocop/cop/migration/add_limit_to_text_columns.rb' + - 'rubocop/cop/migration/add_reference.rb' + - 'rubocop/cop/migration/hash_index.rb' + - 'rubocop/cop/migration/remove_column.rb' + - 'rubocop/cop/migration/sidekiq_queue_migrate.rb' + - 'rubocop/cop/performance/ar_exists_and_present_blank.rb' + - 'rubocop/cop/rspec/web_mock_enable.rb' + - 'rubocop/routes_under_scope.rb' + - 'scripts/pipeline_test_report_builder.rb' + - 'scripts/review_apps/automated_cleanup.rb' + - 'scripts/setup/find-jh-branch.rb' + - 'scripts/static-analysis' + - 'sidekiq_cluster/cli.rb' + - 'spec/db/docs_spec.rb' + - 'spec/factories/ci/runners.rb' + - 'spec/factories/container_repositories.rb' + - 'spec/factories/deployments.rb' + - 'spec/factories/labels.rb' + - 'spec/factories/merge_requests.rb' + - 'spec/factories/namespaces.rb' + - 'spec/factories/packages/packages.rb' + - 'spec/factories/projects.rb' + - 'spec/factories/protected_tags.rb' + - 'spec/factories/users.rb' + - 'spec/factories_spec.rb' + - 'spec/features/admin/admin_users_spec.rb' + - 'spec/features/merge_request/batch_comments_spec.rb' + - 'spec/features/merge_request/user_sees_avatar_on_diff_notes_spec.rb' + - 'spec/features/projects/blobs/edit_spec.rb' + - 'spec/features/refactor_blob_viewer_disabled/projects/blobs/edit_spec.rb' + - 'spec/graphql/mutations/releases/update_spec.rb' + - 'spec/helpers/application_settings_helper_spec.rb' + - 'spec/helpers/invite_members_helper_spec.rb' + - 'spec/lib/container_registry/gitlab_api_client_spec.rb' + - 'spec/lib/gitlab/background_migration/disable_expiration_policies_linked_to_no_container_images_spec.rb' + - 'spec/lib/gitlab/ci/pipeline/seed/environment_spec.rb' + - 'spec/lib/gitlab/config/entry/validators/nested_array_helpers_spec.rb' + - 'spec/lib/gitlab/conflict/file_spec.rb' + - 'spec/lib/gitlab/database/load_balancing_spec.rb' + - 'spec/lib/gitlab/rack_attack/user_allowlist_spec.rb' + - 'spec/lib/gitlab/sidekiq_config/worker_router_spec.rb' + - 'spec/lib/gitlab/sidekiq_middleware/server_metrics_spec.rb' + - 'spec/lib/gitlab/sidekiq_migrate_jobs_spec.rb' + - 'spec/lib/mattermost/session_spec.rb' + - 'spec/lib/object_storage/direct_upload_spec.rb' + - 'spec/models/concerns/limitable_spec.rb' + - 'spec/models/container_repository_spec.rb' + - 'spec/models/project_spec.rb' + - 'spec/models/snippet_input_action_spec.rb' + - 'spec/policies/project_statistics_policy_spec.rb' + - 'spec/requests/api/ci/jobs_spec.rb' + - 'spec/requests/api/commit_statuses_spec.rb' + - 'spec/requests/api/files_spec.rb' + - 'spec/requests/api/integrations_spec.rb' + - 'spec/routing/import_routing_spec.rb' + - 'spec/serializers/issue_sidebar_basic_entity_spec.rb' + - 'spec/services/application_settings/update_service_spec.rb' + - 'spec/services/clusters/applications/create_service_spec.rb' + - 'spec/services/git/process_ref_changes_service_spec.rb' + - 'spec/services/members/destroy_service_spec.rb' + - 'spec/services/notification_recipients/builder/default_spec.rb' + - 'spec/services/packages/debian/update_distribution_service_spec.rb' + - 'spec/services/packages/maven/find_or_create_package_service_spec.rb' + - 'spec/services/packages/maven/metadata/append_package_file_service_spec.rb' + - 'spec/services/packages/maven/metadata/sync_service_spec.rb' + - 'spec/services/projects/container_repository/cleanup_tags_service_spec.rb' + - 'spec/services/projects/create_service_spec.rb' + - 'spec/spec_helper.rb' + - 'spec/support/capybara.rb' + - 'spec/support/database/multiple_databases.rb' + - 'spec/support/external_authorization_service_helpers.rb' + - 'spec/support/flaky_tests.rb' + - 'spec/support/generate-seed-repo-rb' + - 'spec/support/helpers/cycle_analytics_helpers.rb' + - 'spec/support/helpers/filter_spec_helper.rb' + - 'spec/support/helpers/filtered_search_helpers.rb' + - 'spec/support/helpers/gitaly_setup.rb' + - 'spec/support/helpers/graphql_helpers.rb' + - 'spec/support/helpers/javascript_fixtures_helpers.rb' + - 'spec/support/helpers/kubernetes_helpers.rb' + - 'spec/support/helpers/lets_encrypt_helpers.rb' + - 'spec/support/helpers/live_debugger.rb' + - 'spec/support/helpers/modal_helpers.rb' + - 'spec/support/helpers/seed_helper.rb' + - 'spec/support/helpers/stub_gitlab_calls.rb' + - 'spec/support/helpers/stubbed_feature.rb' + - 'spec/support/helpers/test_env.rb' + - 'spec/support/helpers/usage_data_helpers.rb' + - 'spec/support/http_io/http_io_helpers.rb' + - 'spec/support/import_export/project_tree_expectations.rb' + - 'spec/support/matchers/abort_matcher.rb' + - 'spec/support/services/service_response_shared_examples.rb' + - 'spec/support/shared_contexts/requests/api/debian_repository_shared_context.rb' + - 'spec/support/shared_examples/controllers/issuables_list_metadata_shared_examples.rb' + - 'spec/support/shared_examples/features/discussion_comments_shared_example.rb' + - 'spec/support/shared_examples/helpers/issuable_description_templates_shared_examples.rb' + - 'spec/support/shared_examples/lib/gitlab/import_export/project/tree_restorer_shared_examples.rb' + - 'spec/support/shared_examples/metrics/active_record_subscriber_shared_examples.rb' + - 'spec/support/shared_examples/requests/api/debian_distributions_shared_examples.rb' + - 'spec/support/shared_examples/requests/api/debian_packages_shared_examples.rb' + - 'spec/support/shared_examples/requests/api/status_shared_examples.rb' + - 'spec/support/shared_examples/sends_git_audit_streaming_event_shared_examples.rb' + - 'spec/support/shared_examples/views/pipeline_status_changes_email.rb' + - 'spec/support/shared_examples/views/registration_features_prompt_shared_examples.rb' + - 'spec/support/shared_examples/workers/batched_background_migration_worker_shared_examples.rb' + - 'spec/support/webmock.rb' + - 'spec/views/admin/application_settings/general.html.haml_spec.rb' + - 'spec/views/groups/edit.html.haml_spec.rb' + - 'spec/views/profiles/keys/_key.html.haml_spec.rb' + - 'spec/views/projects/edit.html.haml_spec.rb' + - 'spec/views/shared/access_tokens/_table.html.haml_spec.rb' + - 'spec/workers/analytics/usage_trends/counter_job_worker_spec.rb' + - 'tooling/bin/qa/check_if_qa_only_spec_changes' + - 'tooling/danger/product_intelligence.rb' + - 'tooling/lib/tooling/image.rb' + - 'tooling/lib/tooling/test_map_packer.rb' + - 'tooling/rspec_flaky/flaky_example.rb' + - 'tooling/rspec_flaky/flaky_examples_collection.rb' diff --git a/app/assets/javascripts/runner/admin_runner_show/admin_runner_show_app.vue b/app/assets/javascripts/runner/admin_runner_show/admin_runner_show_app.vue index 8a808cbba37..ef48d7799f8 100644 --- a/app/assets/javascripts/runner/admin_runner_show/admin_runner_show_app.vue +++ b/app/assets/javascripts/runner/admin_runner_show/admin_runner_show_app.vue @@ -84,12 +84,7 @@ export default { diff --git a/app/assets/javascripts/runner/components/runner_delete_button.vue b/app/assets/javascripts/runner/components/runner_delete_button.vue index cc54178bc40..62382891df0 100644 --- a/app/assets/javascripts/runner/components/runner_delete_button.vue +++ b/app/assets/javascripts/runner/components/runner_delete_button.vue @@ -165,6 +165,7 @@ export default { :loading="deleting" :disabled="disabled" variant="danger" + category="secondary" v-bind="$attrs" > {{ buttonContent }} diff --git a/doc/administration/geo/disaster_recovery/index.md b/doc/administration/geo/disaster_recovery/index.md index 1725c283396..a0f634de48a 100644 --- a/doc/administration/geo/disaster_recovery/index.md +++ b/doc/administration/geo/disaster_recovery/index.md @@ -100,15 +100,15 @@ Note the following when promoting a secondary: #### Promoting a **secondary** site running on a single node running GitLab 14.5 and later -1. SSH in to your **secondary** node and execute: +1. SSH in to your **secondary** site and execute: - - To promote the secondary node to primary: + - To promote the secondary site to primary: ```shell sudo gitlab-ctl geo promote ``` - - To promote the secondary node to primary **without any further confirmation**: + - To promote the secondary site to primary **without any further confirmation**: ```shell sudo gitlab-ctl geo promote --force @@ -125,7 +125,7 @@ The `gitlab-ctl promote-to-primary-node` and `gitlab-ctl promoted-db` commands a deprecated in GitLab 14.5 and later, and are scheduled to [be removed in GitLab 15.0](https://gitlab.com/gitlab-org/gitlab/-/issues/345207). Use `gitlab-ctl geo promote` instead. -1. SSH in to your **secondary** node and login as root: +1. SSH in to your **secondary** site and login as root: ```shell sudo -i @@ -142,7 +142,7 @@ Use `gitlab-ctl geo promote` instead. 1. Promote the **secondary** site to the **primary** site: - - To promote the secondary node to primary along with [preflight checks](planned_failover.md#preflight-checks): + - To promote the secondary site to primary along with [preflight checks](planned_failover.md#preflight-checks): ```shell gitlab-ctl promote-to-primary-node @@ -163,7 +163,7 @@ Use `gitlab-ctl geo promote` instead. shows that it is complete, you can skip the preflight checks to make the command complete promotion. This bug was fixed in GitLab 13.8 and later. - - To promote the secondary node to primary **without any further confirmation**, + - To promote the secondary site to primary **without any further confirmation**, even when preflight checks fail: ```shell @@ -178,13 +178,13 @@ Use `gitlab-ctl geo promote` instead. 1. SSH to every Sidekiq, PostgresSQL, and Gitaly node in the **secondary** site and run one of the following commands: - - To promote the secondary node to primary: + - To promote the node on the secondary site to primary: ```shell sudo gitlab-ctl geo promote ``` - - To promote the secondary node to primary **without any further confirmation**: + - To promote the secondary site to primary **without any further confirmation**: ```shell sudo gitlab-ctl geo promote --force @@ -192,13 +192,13 @@ Use `gitlab-ctl geo promote` instead. 1. SSH into each Rails node on your **secondary** site and run one of the following commands: - - To promote the secondary node to primary: + - To promote the secondary site to primary: ```shell sudo gitlab-ctl geo promote ``` - - To promote the secondary node to primary **without any further confirmation**: + - To promote the secondary site to primary **without any further confirmation**: ```shell sudo gitlab-ctl geo promote --force @@ -256,13 +256,13 @@ do this manually. 1. SSH to every Sidekiq, PostgresSQL, and Gitaly node in the **secondary** site and run one of the following commands: - - To promote the secondary node to primary: + - To promote the secondary site to primary: ```shell sudo gitlab-ctl geo promote ``` - - To promote the secondary node to primary **without any further confirmation**: + - To promote the secondary site to primary **without any further confirmation**: ```shell sudo gitlab-ctl geo promote --force @@ -270,13 +270,13 @@ do this manually. 1. SSH into each Rails node on your **secondary** site and run one of the following commands: - - To promote the secondary node to primary: + - To promote the secondary site to primary: ```shell sudo gitlab-ctl geo promote ``` - - To promote the secondary node to primary **without any further confirmation**: + - To promote the secondary site to primary **without any further confirmation**: ```shell sudo gitlab-ctl geo promote --force @@ -347,7 +347,7 @@ site first. - [Azure PostgreSQL](https://docs.microsoft.com/en-us/azure/postgresql/howto-read-replicas-portal#stop-replication) - [Google Cloud SQL](https://cloud.google.com/sql/docs/mysql/replication/manage-replicas#promote-replica) - For other external PostgreSQL databases, save the following script in your - secondary node, for example `/tmp/geo_promote.sh`, and modify the connection + secondary site, for example `/tmp/geo_promote.sh`, and modify the connection parameters to match your environment. Then, execute it to promote the replica: ```shell @@ -370,13 +370,13 @@ site first. 1. SSH to every Sidekiq, PostgresSQL, and Gitaly node in the **secondary** site and run one of the following commands: - - To promote the secondary node to primary: + - To promote the secondary site to primary: ```shell sudo gitlab-ctl geo promote ``` - - To promote the secondary node to primary **without any further confirmation**: + - To promote the secondary site to primary **without any further confirmation**: ```shell sudo gitlab-ctl geo promote --force @@ -384,13 +384,13 @@ site first. 1. SSH into each Rails node on your **secondary** site and run one of the following commands: - - To promote the secondary node to primary: + - To promote the secondary site to primary: ```shell sudo gitlab-ctl geo promote ``` - - To promote the secondary node to primary **without any further confirmation**: + - To promote the secondary site to primary **without any further confirmation**: ```shell sudo gitlab-ctl geo promote --force @@ -418,7 +418,7 @@ required: - [Azure PostgreSQL](https://docs.microsoft.com/en-us/azure/postgresql/howto-read-replicas-portal#stop-replication) - [Google Cloud SQL](https://cloud.google.com/sql/docs/mysql/replication/manage-replicas#promote-replica) - For other external PostgreSQL databases, save the following script in your - secondary node, for example `/tmp/geo_promote.sh`, and modify the connection + secondary site, for example `/tmp/geo_promote.sh`, and modify the connection parameters to match your environment. Then, execute it to promote the replica: ```shell @@ -503,7 +503,7 @@ secondary domain, like changing Git remotes and API URLs. in `/etc/gitlab/gitlab.rb`. 1. For GitLab 12.0 through 12.7, you may need to update the **primary** - node's name in the database. This bug has been fixed in GitLab 12.8. + site's name in the database. This bug has been fixed in GitLab 12.8. To determine if you need to do this, search for the `gitlab_rails["geo_node_name"]` setting in your `/etc/gitlab/gitlab.rb` @@ -571,9 +571,9 @@ and after that you also need two extra steps. # Allow PostgreSQL client authentication from the primary and secondary IPs. These IPs may be # public or VPC addresses in CIDR format, for example ['198.51.100.1/32', '198.51.100.2/32'] ## - postgresql['md5_auth_cidr_addresses'] = ['/32', '/32'] + postgresql['md5_auth_cidr_addresses'] = ['/32', '/32'] - # Every secondary server needs to have its own slot so specify the number of secondary nodes you're going to have + # Every secondary site needs to have its own slot so specify the number of secondary sites you're going to have postgresql['max_replication_slots'] = 1 ## @@ -662,7 +662,7 @@ must disable the **primary** site: - Revoke object storage permissions from the **primary** site. - Physically disconnect a machine. -### Step 2. Promote all **secondary** sites external to the cluster +### Step 2. Promote all **secondary** site nodes external to the cluster WARNING: If the secondary site [has been paused](../../geo/index.md#pausing-and-resuming-replication), this performs @@ -673,13 +673,13 @@ If you are running GitLab 14.5 and later: 1. For each node outside of the **secondary** Kubernetes cluster using Omnibus such as PostgreSQL or Gitaly, SSH into the node and run one of the following commands: - - To promote the secondary node to primary: + - To promote the **secondary** site node external to the Kubernetes cluster to primary: ```shell sudo gitlab-ctl geo promote ``` - - To promote the secondary node to primary **without any further confirmation**: + - To promote the **secondary** site node external to the Kubernetes cluster to primary **without any further confirmation**: ```shell sudo gitlab-ctl geo promote --force @@ -699,7 +699,7 @@ If you are running GitLab 14.5 and later: If you are running GitLab 14.4 and earlier: -1. SSH in to the database node in the **secondary** and trigger PostgreSQL to +1. SSH in to the database node in the **secondary** site and trigger PostgreSQL to promote to read-write: ```shell diff --git a/doc/administration/geo/index.md b/doc/administration/geo/index.md index 1b80e91c9c4..dc25be825ea 100644 --- a/doc/administration/geo/index.md +++ b/doc/administration/geo/index.md @@ -254,7 +254,7 @@ Omnibus GitLab-managed database. External databases are not supported. In some circumstances, like during [upgrades](replication/updating_the_geo_sites.md) or a [planned failover](disaster_recovery/planned_failover.md), it is desirable to pause replication between the primary and secondary. -Pausing and resuming replication is done via a command line tool from the a node in the secondary site where the `postgresql` service is enabled. +Pausing and resuming replication is done via a command line tool from the node in the secondary site where the `postgresql` service is enabled. If `postgresql` is on a standalone database node, ensure that `gitlab.rb` on that node contains the configuration line `gitlab_rails['geo_node_name'] = 'node_name'`, where `node_name` is the same as the `geo_name_name` on the application node. @@ -288,7 +288,7 @@ For more information on how to replicate the Container Registry, see [Docker Reg ### Geo secondary proxy -For more information on using Geo proxying on secondary nodes, see [Geo proxying for secondary sites](secondary_proxy/index.md). +For more information on using Geo proxying on secondary sites, see [Geo proxying for secondary sites](secondary_proxy/index.md). ### Security Review diff --git a/doc/administration/geo/replication/troubleshooting.md b/doc/administration/geo/replication/troubleshooting.md index cf26884bd85..2e78c53d197 100644 --- a/doc/administration/geo/replication/troubleshooting.md +++ b/doc/administration/geo/replication/troubleshooting.md @@ -419,6 +419,21 @@ sudo gitlab-ctl reconfigure To help us resolve this problem, consider commenting on [the issue](https://gitlab.com/gitlab-org/gitlab/-/issues/4489). +### Message: `FATAL: could not connect to the primary server: server certificate for "PostgreSQL" does not match host name` + +This happens because the PostgreSQL certificate that the Omnibus GitLab package automatically creates contains +the Common Name `PostgreSQL`, but the replication is connecting to a different host and GitLab attempts to use +the `verify-full` SSL mode by default. + +In order to fix this, you can either: + +- Use the `--sslmode=verify-ca` argument with the `replicate-geo-database` command. +- For an already replicated database, change `sslmode=verify-full` to `sslmode=verify-ca` + in `/var/opt/gitlab/postgresql/data/gitlab-geo.conf` and run `gitlab-ctl restart postgresql`. +- [Configure SSL for PostgreSQL](https://docs.gitlab.com/omnibus/settings/database.html#configuring-ssl) + with a custom certificate (including the host name that's used to connect to the database in the CN or SAN) + instead of using the automatically generated certificate. + ### Message: `LOG: invalid CIDR mask in address` This happens on wrongly-formatted addresses in `postgresql['md5_auth_cidr_addresses']`. @@ -1101,6 +1116,21 @@ This is due to [Pages data not being managed by Geo](datatypes.md#limitations-on Find advice to resolve those error messages in the [Pages administration documentation](../../../administration/pages/index.md#404-error-after-promoting-a-geo-secondary-to-a-primary-node). +### Primary site returns 500 error when accessing `/admin/geo/replication/projects` + +Navigating to **Admin > Geo > Replication** (or `/admin/geo/replication/projects`) on a primary Geo site, shows a 500 error, while that same link on the secondary works fine. The primary's `production.log` has a similar entry to the following: + +```plaintext +Geo::TrackingBase::SecondaryNotConfigured: Geo secondary database is not configured + from ee/app/models/geo/tracking_base.rb:26:in `connection' + [..] + from ee/app/views/admin/geo/projects/_all.html.haml:1 +``` + +On a Geo primary site this error can be ignored. + +This happens because GitLab is attempting to display registries from the [Geo tracking database](../../../administration/geo/#geo-tracking-database) which doesn't exist on the primary site (only the original projects exist on the primary; no replicated projects are present, therefore no tracking database exists). + ## Fixing client errors ### Authorization errors from LFS HTTP(s) client requests diff --git a/doc/administration/geo/setup/database.md b/doc/administration/geo/setup/database.md index 6cd4f299138..5058fed128b 100644 --- a/doc/administration/geo/setup/database.md +++ b/doc/administration/geo/setup/database.md @@ -300,6 +300,24 @@ There is an [issue where support is being discussed](https://gitlab.com/gitlab-o need it when setting up the **secondary** node! The certificate is not sensitive data. + However, this certificate is created with a generic `PostgreSQL` Common Name. For this, + you must use the `verify-ca` mode when replicating the database, otherwise, + the hostname mismatch will cause errors. + +1. Optional. Generate your own SSL certificate and manually + [configure SSL for PostgreSQL](https://docs.gitlab.com/omnibus/settings/database.html#configuring-ssl), + instead of using the generated certificate. + + You will need at least the SSL certificate and key, and set the `postgresql['ssl_cert_file']` and + `postgresql['ssl_key_file']` values to their full paths, as per the Database SSL docs. + + This allows you to use the `verify-full` SSL mode when replicating the database + and get the extra benefit of verifying the full hostname in the CN. + + You can use this certificate (that you have also set in `postgresql['ssl_cert_file']`) instead + of the certificate from the point above going forward. This will allow you to use `verify-full` + without replication errors if the CN matches. + #### Step 2. Configure the **secondary** server 1. SSH into your GitLab **secondary** server and login as root: @@ -367,6 +385,12 @@ There is an [issue where support is being discussed](https://gitlab.com/gitlab-o -h ``` + NOTE: + If you are using manually generated certificates and plan on using + `sslmode=verify-full` to benefit of the full hostname verification, + make sure to replace `verify-ca` to `verify-full` when + running the command. + When prompted enter the password you set in the first step for the `gitlab_replicator` user. If all worked correctly, you should see the list of **primary** node's databases. @@ -455,6 +479,7 @@ data before running `pg_basebackup`. gitlab-ctl replicate-geo-database \ --slot-name= \ --host= + --sslmode=verify-ca ``` NOTE: @@ -463,6 +488,13 @@ data before running `pg_basebackup`. When prompted, enter the _plaintext_ password you set up for the `gitlab_replicator` user in the first step. + NOTE: + If you have generated custom PostgreSQL certificates, you will want to use + `--sslmode=verify-full` (or omit the `sslmode` line entirely), to benefit from the extra + validation of the full host name in the certificate CN / SAN for additional security. + Otherwise, using the automatically created certificate with `verify-full` will fail, + as it has a generic `PostgreSQL` CN which will not match the `--host` value in this command. + This command also takes a number of additional options. You can use `--help` to list them all, but here are a couple of tips: diff --git a/doc/administration/troubleshooting/gitlab_rails_cheat_sheet.md b/doc/administration/troubleshooting/gitlab_rails_cheat_sheet.md index 690a842aa1c..23edad398c1 100644 --- a/doc/administration/troubleshooting/gitlab_rails_cheat_sheet.md +++ b/doc/administration/troubleshooting/gitlab_rails_cheat_sheet.md @@ -753,6 +753,21 @@ group.members_with_parents.count parent.members_with_descendants.count ``` +### Find gropus that are pending deletion + +```ruby +# +# This section lists all the groups which are pending deletion +# +Group.all.each do |g| + if g.marked_for_deletion? + puts "Group ID: #{g.id}" + puts "Group name: #{g.name}" + puts "Group path: #{g.full_path}" + end +end +``` + ### Delete a group ```ruby diff --git a/doc/api/container_registry.md b/doc/api/container_registry.md index e04f34cf4f4..3ba249099c2 100644 --- a/doc/api/container_registry.md +++ b/doc/api/container_registry.md @@ -156,14 +156,6 @@ Example response: "location": "gitlab.example.com:5000/group/project", "created_at": "2019-01-10T13:38:57.391Z", "cleanup_policy_started_at": "2020-08-17T03:12:35.489Z", - "tags_count": 1, - "tags": [ - { - "name": "0.0.1", - "path": "group/project:0.0.1", - "location": "gitlab.example.com:5000/group/project:0.0.1" - } - ] }, { "id": 2, @@ -173,24 +165,6 @@ Example response: "location": "gitlab.example.com:5000/group/other_project", "created_at": "2019-01-10T13:39:08.229Z", "cleanup_policy_started_at": "2020-01-10T15:40:57.391Z", - "tags_count": 3, - "tags": [ - { - "name": "0.0.1", - "path": "group/other_project:0.0.1", - "location": "gitlab.example.com:5000/group/other_project:0.0.1" - }, - { - "name": "0.0.2", - "path": "group/other_project:0.0.2", - "location": "gitlab.example.com:5000/group/other_project:0.0.2" - }, - { - "name": "latest", - "path": "group/other_project:latest", - "location": "gitlab.example.com:5000/group/other_project:latest" - } - ] } ] ``` diff --git a/doc/user/packages/go_proxy/index.md b/doc/user/packages/go_proxy/index.md index 29455fdbb35..d2edfcb94c5 100644 --- a/doc/user/packages/go_proxy/index.md +++ b/doc/user/packages/go_proxy/index.md @@ -106,6 +106,11 @@ the scope set to `api` or `read_api`. Open your [`~/.netrc`](https://everything.curl.dev/usingcurl/netrc) file and add the following text. Replace the variables in `< >` with your values. +WARNING: +If you use an environment variable called `NETRC`, Go will use its value +as a filename and ignore `~/.netrc`. If you intend to use `~/.netrc` in +the GitLab CI **do not use `NETRC` as an environment variable name**. + ```plaintext machine login password ``` diff --git a/lib/api/group_container_repositories.rb b/lib/api/group_container_repositories.rb index 97681a7cbe4..62022368dab 100644 --- a/lib/api/group_container_repositories.rb +++ b/lib/api/group_container_repositories.rb @@ -24,8 +24,6 @@ module API end params do use :pagination - optional :tags, type: Boolean, default: false, desc: 'Determines if tags should be included' - optional :tags_count, type: Boolean, default: false, desc: 'Determines if the tags count should be included' end get ':id/registry/repositories' do repositories = ContainerRepositoriesFinder.new( @@ -34,7 +32,7 @@ module API track_package_event('list_repositories', :container, user: current_user, namespace: user_group) - present paginate(repositories), with: Entities::ContainerRegistry::Repository, tags: params[:tags], tags_count: params[:tags_count] + present paginate(repositories), with: Entities::ContainerRegistry::Repository, tags: false, tags_count: false end end diff --git a/spec/requests/api/group_container_repositories_spec.rb b/spec/requests/api/group_container_repositories_spec.rb index aceea797773..413c37eaed9 100644 --- a/spec/requests/api/group_container_repositories_spec.rb +++ b/spec/requests/api/group_container_repositories_spec.rb @@ -37,22 +37,15 @@ RSpec.describe API::GroupContainerRepositories do let(:url) { "/groups/#{group.id}/registry/repositories" } let(:snowplow_gitlab_standard_context) { { user: api_user, namespace: group } } - subject { get api(url, api_user), params: params } + subject { get api(url, api_user) } it_behaves_like 'rejected container repository access', :guest, :forbidden it_behaves_like 'rejected container repository access', :anonymous, :not_found - it_behaves_like 'handling network errors with the container registry' do - let(:params) { { tags: true } } - end it_behaves_like 'returns repositories for allowed users', :reporter, 'group' do let(:object) { group } end - it_behaves_like 'returns tags for allowed users', :reporter, 'group' do - let(:object) { group } - end - it_behaves_like 'a package tracking event', described_class.name, 'list_repositories' context 'with invalid group id' do