Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
parent
48deaeec94
commit
705210af74
8 changed files with 791 additions and 63 deletions
|
@ -11,13 +11,6 @@ Gitlab/PolicyRuleBoolean:
|
|||
Exclude:
|
||||
- 'ee/app/policies/ee/identity_provider_policy.rb'
|
||||
|
||||
# Offense count: 1684
|
||||
# Cop supports --auto-correct.
|
||||
# Configuration parameters: EnforcedStyle, IndentationWidth.
|
||||
# SupportedStyles: special_inside_parentheses, consistent, align_braces
|
||||
Layout/FirstHashElementIndentation:
|
||||
Enabled: false
|
||||
|
||||
# Offense count: 14544
|
||||
# Cop supports --auto-correct.
|
||||
# Configuration parameters: AutoCorrect, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
|
||||
|
|
568
.rubocop_todo/layout/first_hash_element_indentation.yml
Normal file
568
.rubocop_todo/layout/first_hash_element_indentation.yml
Normal file
|
@ -0,0 +1,568 @@
|
|||
---
|
||||
# Cop supports --auto-correct.
|
||||
Layout/FirstHashElementIndentation:
|
||||
# Offense count: 1995
|
||||
# Temporarily disabled due to too many offenses
|
||||
Enabled: false
|
||||
Exclude:
|
||||
- 'app/controllers/admin/system_info_controller.rb'
|
||||
- 'app/controllers/boards/issues_controller.rb'
|
||||
- 'app/controllers/concerns/issuable_actions.rb'
|
||||
- 'app/controllers/concerns/milestone_actions.rb'
|
||||
- 'app/controllers/concerns/render_service_results.rb'
|
||||
- 'app/controllers/concerns/sourcegraph_decorator.rb'
|
||||
- 'app/controllers/profiles/two_factor_auths_controller.rb'
|
||||
- 'app/controllers/projects/badges_controller.rb'
|
||||
- 'app/controllers/projects/merge_requests_controller.rb'
|
||||
- 'app/controllers/repositories/lfs_locks_api_controller.rb'
|
||||
- 'app/experiments/concerns/project_commit_count.rb'
|
||||
- 'app/graphql/mutations/clusters/agent_tokens/create.rb'
|
||||
- 'app/graphql/mutations/notes/create/diff_note.rb'
|
||||
- 'app/graphql/mutations/notes/create/image_diff_note.rb'
|
||||
- 'app/graphql/mutations/notes/create/note.rb'
|
||||
- 'app/graphql/mutations/todos/restore_many.rb'
|
||||
- 'app/graphql/resolvers/group_packages_resolver.rb'
|
||||
- 'app/helpers/avatars_helper.rb'
|
||||
- 'app/helpers/breadcrumbs_helper.rb'
|
||||
- 'app/helpers/broadcast_messages_helper.rb'
|
||||
- 'app/helpers/commits_helper.rb'
|
||||
- 'app/helpers/diff_helper.rb'
|
||||
- 'app/helpers/environments_helper.rb'
|
||||
- 'app/helpers/icons_helper.rb'
|
||||
- 'app/helpers/keyset_helper.rb'
|
||||
- 'app/helpers/listbox_helper.rb'
|
||||
- 'app/helpers/page_layout_helper.rb'
|
||||
- 'app/helpers/search_helper.rb'
|
||||
- 'app/helpers/sorting_helper.rb'
|
||||
- 'app/helpers/ssh_keys_helper.rb'
|
||||
- 'app/helpers/tags_helper.rb'
|
||||
- 'app/helpers/tree_helper.rb'
|
||||
- 'app/helpers/users_helper.rb'
|
||||
- 'app/mailers/emails/issues.rb'
|
||||
- 'app/mailers/emails/merge_requests.rb'
|
||||
- 'app/models/application_setting.rb'
|
||||
- 'app/models/ci/build.rb'
|
||||
- 'app/models/ci/build_metadata.rb'
|
||||
- 'app/models/ci/runner.rb'
|
||||
- 'app/models/clusters/applications/crossplane.rb'
|
||||
- 'app/models/concerns/cross_database_modification.rb'
|
||||
- 'app/models/concerns/featurable.rb'
|
||||
- 'app/models/concerns/has_wiki_page_slug_attributes.rb'
|
||||
- 'app/models/concerns/integrations/enable_ssl_verification.rb'
|
||||
- 'app/models/concerns/subscribable.rb'
|
||||
- 'app/models/concerns/taskable.rb'
|
||||
- 'app/models/diff_note.rb'
|
||||
- 'app/models/integrations/datadog.rb'
|
||||
- 'app/models/integrations/jira.rb'
|
||||
- 'app/models/jira_connect_installation.rb'
|
||||
- 'app/models/milestone.rb'
|
||||
- 'app/models/note.rb'
|
||||
- 'app/models/operations/feature_flags/strategy.rb'
|
||||
- 'app/models/project.rb'
|
||||
- 'app/models/wiki.rb'
|
||||
- 'app/presenters/ci/build_metadata_presenter.rb'
|
||||
- 'app/presenters/packages/helm/index_presenter.rb'
|
||||
- 'app/serializers/cluster_serializer.rb'
|
||||
- 'app/serializers/detailed_status_entity.rb'
|
||||
- 'app/services/award_emojis/base_service.rb'
|
||||
- 'app/services/google_cloud/create_service_accounts_service.rb'
|
||||
- 'app/services/members/create_service.rb'
|
||||
- 'app/services/notification_service.rb'
|
||||
- 'app/services/packages/composer/create_package_service.rb'
|
||||
- 'app/services/resource_events/change_milestone_service.rb'
|
||||
- 'app/services/spam/ham_service.rb'
|
||||
- 'app/validators/addressable_url_validator.rb'
|
||||
- 'app/workers/concerns/cluster_cleanup_methods.rb'
|
||||
- 'ee/app/controllers/groups/analytics/tasks_by_type_controller.rb'
|
||||
- 'ee/app/graphql/mutations/boards/epic_lists/destroy.rb'
|
||||
- 'ee/app/graphql/mutations/boards/epics/create.rb'
|
||||
- 'ee/app/graphql/mutations/iterations/cadences/update.rb'
|
||||
- 'ee/app/graphql/mutations/iterations/create.rb'
|
||||
- 'ee/app/graphql/mutations/iterations/update.rb'
|
||||
- 'ee/app/graphql/mutations/projects/set_compliance_framework.rb'
|
||||
- 'ee/app/graphql/mutations/security_policy/commit_scan_execution_policy.rb'
|
||||
- 'ee/app/helpers/ee/ci/jobs_helper.rb'
|
||||
- 'ee/app/helpers/ee/geo_helper.rb'
|
||||
- 'ee/app/helpers/ee/groups/group_members_helper.rb'
|
||||
- 'ee/app/helpers/ee/ide_helper.rb'
|
||||
- 'ee/app/helpers/ee/projects_helper.rb'
|
||||
- 'ee/app/helpers/ee/sidebars_helper.rb'
|
||||
- 'ee/app/helpers/ee/tree_helper.rb'
|
||||
- 'ee/app/helpers/incident_management/escalation_policy_helper.rb'
|
||||
- 'ee/app/helpers/paid_feature_callout_helper.rb'
|
||||
- 'ee/app/helpers/projects/on_demand_scans_helper.rb'
|
||||
- 'ee/app/helpers/projects/security/dast_profiles_helper.rb'
|
||||
- 'ee/app/mailers/ee/emails/issues.rb'
|
||||
- 'ee/app/models/ee/list.rb'
|
||||
- 'ee/app/serializers/ee/environment_serializer.rb'
|
||||
- 'ee/app/services/app_sec/dast/profiles/update_service.rb'
|
||||
- 'ee/app/services/app_sec/dast/site_profiles/update_service.rb'
|
||||
- 'ee/app/services/ee/auth/container_registry_authentication_service.rb'
|
||||
- 'ee/app/services/ee/ci/register_job_service.rb'
|
||||
- 'ee/app/services/ee/issues/export_csv_service.rb'
|
||||
- 'ee/app/services/elastic/cluster_reindexing_service.rb'
|
||||
- 'ee/app/services/gitlab_subscriptions/plan_upgrade_service.rb'
|
||||
- 'ee/app/services/jira/requests/issues/list_service.rb'
|
||||
- 'ee/app/services/projects/slack_application_install_service.rb'
|
||||
- 'ee/app/services/security/token_revocation_service.rb'
|
||||
- 'ee/app/services/timebox_report_service.rb'
|
||||
- 'ee/app/workers/elastic_delete_project_worker.rb'
|
||||
- 'ee/app/workers/groups/create_event_worker.rb'
|
||||
- 'ee/lib/api/epic_links.rb'
|
||||
- 'ee/lib/ee/container_registry/client.rb'
|
||||
- 'ee/lib/ee/gitlab/ci/parsers.rb'
|
||||
- 'ee/lib/ee/gitlab/usage_data.rb'
|
||||
- 'ee/lib/elastic/latest/application_class_proxy.rb'
|
||||
- 'ee/lib/elastic/latest/issue_class_proxy.rb'
|
||||
- 'ee/lib/gitlab/geo/project_log_helpers.rb'
|
||||
- 'ee/lib/gitlab/graphql/aggregations/epics/lazy_epic_aggregate.rb'
|
||||
- 'ee/lib/gitlab/status_page/storage/s3_multipart_upload.rb'
|
||||
- 'ee/spec/controllers/admin/application_settings_controller_spec.rb'
|
||||
- 'ee/spec/controllers/boards/issues_controller_spec.rb'
|
||||
- 'ee/spec/controllers/boards/lists_controller_spec.rb'
|
||||
- 'ee/spec/controllers/boards/users_controller_spec.rb'
|
||||
- 'ee/spec/controllers/ee/projects/jobs_controller_spec.rb'
|
||||
- 'ee/spec/controllers/ee/projects/variables_controller_spec.rb'
|
||||
- 'ee/spec/controllers/groups/epic_boards_controller_spec.rb'
|
||||
- 'ee/spec/controllers/groups/issues_controller_spec.rb'
|
||||
- 'ee/spec/controllers/projects/boards_controller_spec.rb'
|
||||
- 'ee/spec/controllers/projects/feature_flag_issues_controller_spec.rb'
|
||||
- 'ee/spec/controllers/projects/imports_controller_spec.rb'
|
||||
- 'ee/spec/controllers/projects/licenses_controller_spec.rb'
|
||||
- 'ee/spec/controllers/projects/vulnerability_feedback_controller_spec.rb'
|
||||
- 'ee/spec/controllers/projects_controller_spec.rb'
|
||||
- 'ee/spec/controllers/security/projects_controller_spec.rb'
|
||||
- 'ee/spec/elastic/migrate/20210421140400_add_new_data_to_merge_requests_documents_spec.rb'
|
||||
- 'ee/spec/elastic/migrate/20210623081800_add_upvotes_to_issues_spec.rb'
|
||||
- 'ee/spec/factories/dependencies.rb'
|
||||
- 'ee/spec/factories/licenses.rb'
|
||||
- 'ee/spec/finders/epics_finder_spec.rb'
|
||||
- 'ee/spec/frontend/fixtures/dast_profiles.rb'
|
||||
- 'ee/spec/frontend/fixtures/on_demand_dast_scans.rb'
|
||||
- 'ee/spec/frontend/fixtures/search.rb'
|
||||
- 'ee/spec/graphql/mutations/app_sec/fuzzing/api/ci_configuration/create_spec.rb'
|
||||
- 'ee/spec/graphql/types/vulnerability_request_response_header_type_spec.rb'
|
||||
- 'ee/spec/helpers/billing_plans_helper_spec.rb'
|
||||
- 'ee/spec/helpers/ee/access_tokens_helper_spec.rb'
|
||||
- 'ee/spec/helpers/ee/labels_helper_spec.rb'
|
||||
- 'ee/spec/helpers/ee/projects/security/dast_configuration_helper_spec.rb'
|
||||
- 'ee/spec/helpers/ee/projects/security/sast_configuration_helper_spec.rb'
|
||||
- 'ee/spec/helpers/groups/sso_helper_spec.rb'
|
||||
- 'ee/spec/helpers/nav/new_dropdown_helper_spec.rb'
|
||||
- 'ee/spec/helpers/projects/security/policies_helper_spec.rb'
|
||||
- 'ee/spec/helpers/projects/threat_monitoring_helper_spec.rb'
|
||||
- 'ee/spec/helpers/projects_helper_spec.rb'
|
||||
- 'ee/spec/helpers/routing/pseudonymization_helper_spec.rb'
|
||||
- 'ee/spec/helpers/search_helper_spec.rb'
|
||||
- 'ee/spec/helpers/security_helper_spec.rb'
|
||||
- 'ee/spec/helpers/trial_registrations/reassurances_helper_spec.rb'
|
||||
- 'ee/spec/lib/container_registry/client_spec.rb'
|
||||
- 'ee/spec/lib/ee/audit/project_changes_auditor_spec.rb'
|
||||
- 'ee/spec/lib/ee/gitlab/analytics/cycle_analytics/base_query_builder_spec.rb'
|
||||
- 'ee/spec/lib/ee/gitlab/auth/ldap/access_levels_spec.rb'
|
||||
- 'ee/spec/lib/ee/gitlab/ci/config/entry/bridge_spec.rb'
|
||||
- 'ee/spec/lib/ee/gitlab/ci/parsers/security/common_spec.rb'
|
||||
- 'ee/spec/lib/ee/gitlab/usage_data_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/data_collector_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/request_params_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/analytics/cycle_analytics/summary/group/stage_summary_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/analytics/type_of_work/tasks_by_type_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/auth/group_saml/membership_updater_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/auth/smartcard/san_extension_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/ci/config/entry/job_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/ci/parsers/security/dast_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/ci/reports/coverage_fuzzing/report_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/ci/reports/security/finding_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/ci/yaml_processor_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/contribution_analytics/data_collector_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/elastic/indexer_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/graphql/aggregations/epics/lazy_epic_aggregate_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/subscription_portal/clients/graphql_spec.rb'
|
||||
- 'ee/spec/lib/gitlab/web_ide/config/entry/schemas_spec.rb'
|
||||
- 'ee/spec/mailers/credentials_inventory_mailer_spec.rb'
|
||||
- 'ee/spec/mailers/emails/requirements_spec.rb'
|
||||
- 'ee/spec/models/analytics/cycle_analytics/project_stage_spec.rb'
|
||||
- 'ee/spec/models/concerns/elastic/application_versioned_search_spec.rb'
|
||||
- 'ee/spec/models/concerns/elastic/merge_request_spec.rb'
|
||||
- 'ee/spec/models/concerns/elastic/milestone_spec.rb'
|
||||
- 'ee/spec/models/concerns/elastic/snippet_spec.rb'
|
||||
- 'ee/spec/models/security/finding_spec.rb'
|
||||
- 'ee/spec/requests/api/analytics/project_deployment_frequency_spec.rb'
|
||||
- 'ee/spec/requests/api/experiments_spec.rb'
|
||||
- 'ee/spec/requests/api/graphql/app_sec/fuzzing/api/ci_configuration_type_spec.rb'
|
||||
- 'ee/spec/requests/api/graphql/app_sec/fuzzing/coverage/corpus_type_spec.rb'
|
||||
- 'ee/spec/requests/api/graphql/ci/minutes/usage_spec.rb'
|
||||
- 'ee/spec/requests/api/graphql/merge_requests/approval_state_spec.rb'
|
||||
- 'ee/spec/requests/api/graphql/milestone_spec.rb'
|
||||
- 'ee/spec/requests/api/graphql/mutations/app_sec/fuzzing/api/ci_configuration/create_spec.rb'
|
||||
- 'ee/spec/requests/api/graphql/mutations/gitlab_subscriptions/activate_spec.rb'
|
||||
- 'ee/spec/requests/api/graphql/mutations/issues/update_spec.rb'
|
||||
- 'ee/spec/requests/api/graphql/mutations/iterations/create_spec.rb'
|
||||
- 'ee/spec/requests/api/internal/base_spec.rb'
|
||||
- 'ee/spec/requests/api/internal/upcoming_reconciliations_spec.rb'
|
||||
- 'ee/spec/requests/api/members_spec.rb'
|
||||
- 'ee/spec/requests/api/merge_requests_spec.rb'
|
||||
- 'ee/spec/requests/groups/group_members_controller_spec.rb'
|
||||
- 'ee/spec/requests/projects/issue_feature_flags_controller_spec.rb'
|
||||
- 'ee/spec/requests/projects/mirrors_controller_spec.rb'
|
||||
- 'ee/spec/serializers/issues/linked_issue_feature_flag_entity_spec.rb'
|
||||
- 'ee/spec/serializers/license_entity_spec.rb'
|
||||
- 'ee/spec/serializers/linked_feature_flag_issue_entity_spec.rb'
|
||||
- 'ee/spec/services/alert_management/network_alert_service_spec.rb'
|
||||
- 'ee/spec/services/analytics/cycle_analytics/data_loader_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/profile_schedules/audit/update_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/profiles/audit/update_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/profiles/create_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/profiles/destroy_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/profiles/update_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/scanner_profiles/create_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/scanner_profiles/destroy_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/site_profiles/audit/update_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/site_profiles/create_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/dast/site_profiles/destroy_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/fuzzing/api/ci_configuration_create_service_spec.rb'
|
||||
- 'ee/spec/services/app_sec/fuzzing/coverage/corpuses/create_service_spec.rb'
|
||||
- 'ee/spec/services/approval_rules/create_service_spec.rb'
|
||||
- 'ee/spec/services/approval_rules/update_service_spec.rb'
|
||||
- 'ee/spec/services/audit_event_service_spec.rb'
|
||||
- 'ee/spec/services/ci/create_pipeline_service_spec.rb'
|
||||
- 'ee/spec/services/ee/alert_management/http_integrations/create_service_spec.rb'
|
||||
- 'ee/spec/services/ee/alert_management/http_integrations/update_service_spec.rb'
|
||||
- 'ee/spec/services/ee/merge_requests/create_pipeline_service_spec.rb'
|
||||
- 'ee/spec/services/ee/post_receive_service_spec.rb'
|
||||
- 'ee/spec/services/geo/node_status_request_service_spec.rb'
|
||||
- 'ee/spec/services/geo/registry_consistency_service_spec.rb'
|
||||
- 'ee/spec/services/gitlab_subscriptions/check_future_renewal_service_spec.rb'
|
||||
- 'ee/spec/services/gitlab_subscriptions/plan_upgrade_service_spec.rb'
|
||||
- 'ee/spec/services/groups/create_service_spec.rb'
|
||||
- 'ee/spec/services/groups/destroy_service_spec.rb'
|
||||
- 'ee/spec/services/iterations/create_service_spec.rb'
|
||||
- 'ee/spec/services/projects/create_service_spec.rb'
|
||||
- 'ee/spec/services/projects/group_links/create_service_spec.rb'
|
||||
- 'ee/spec/services/projects/group_links/destroy_service_spec.rb'
|
||||
- 'ee/spec/services/projects/transfer_service_spec.rb'
|
||||
- 'ee/spec/services/security/report_summary_service_spec.rb'
|
||||
- 'ee/spec/services/security/security_orchestration_policies/create_pipeline_service_spec.rb'
|
||||
- 'ee/spec/services/security/token_revocation_service_spec.rb'
|
||||
- 'ee/spec/services/security/track_scan_service_spec.rb'
|
||||
- 'ee/spec/services/timebox_report_service_spec.rb'
|
||||
- 'ee/spec/support/helpers/ee/login_helpers.rb'
|
||||
- 'ee/spec/support/shared_contexts/fixtures/analytics_shared_context.rb'
|
||||
- 'ee/spec/support/shared_examples/controllers/analytics/cycle_analytics/shared_stage_shared_examples.rb'
|
||||
- 'lib/api/admin/instance_clusters.rb'
|
||||
- 'lib/api/group_clusters.rb'
|
||||
- 'lib/api/project_clusters.rb'
|
||||
- 'lib/atlassian/jira_connect/client.rb'
|
||||
- 'lib/banzai/filter/commit_trailers_filter.rb'
|
||||
- 'lib/banzai/filter/playable_link_filter.rb'
|
||||
- 'lib/banzai/reference_parser/user_parser.rb'
|
||||
- 'lib/error_tracking/sentry_client/issue.rb'
|
||||
- 'lib/gitlab/analytics/cycle_analytics/aggregated/records_fetcher.rb'
|
||||
- 'lib/gitlab/analytics/cycle_analytics/records_fetcher.rb'
|
||||
- 'lib/gitlab/asciidoc.rb'
|
||||
- 'lib/gitlab/asciidoc/include_processor.rb'
|
||||
- 'lib/gitlab/auth/otp/strategies/forti_token_cloud.rb'
|
||||
- 'lib/gitlab/ci/config/entry/processable.rb'
|
||||
- 'lib/gitlab/config_checker/external_database_checker.rb'
|
||||
- 'lib/gitlab/database/query_analyzers/gitlab_schemas_metrics.rb'
|
||||
- 'lib/gitlab/database/query_analyzers/prevent_cross_database_modification.rb'
|
||||
- 'lib/gitlab/github_import/importer/diff_note_importer.rb'
|
||||
- 'lib/gitlab/github_import/importer/pull_request_merged_by_importer.rb'
|
||||
- 'lib/gitlab/gitlab_import/client.rb'
|
||||
- 'lib/gitlab/graphql/query_analyzers/logger_analyzer.rb'
|
||||
- 'lib/gitlab/graphql/query_analyzers/recursion_analyzer.rb'
|
||||
- 'lib/gitlab/hook_data/issue_builder.rb'
|
||||
- 'lib/gitlab/hook_data/release_builder.rb'
|
||||
- 'lib/gitlab/kubernetes.rb'
|
||||
- 'lib/gitlab/kubernetes/namespace.rb'
|
||||
- 'lib/gitlab/kubernetes/rollout_instances.rb'
|
||||
- 'lib/gitlab/legacy_github_import/client.rb'
|
||||
- 'lib/gitlab/nav/top_nav_view_model_builder.rb'
|
||||
- 'lib/gitlab/push_options.rb'
|
||||
- 'lib/gitlab/quick_actions/issuable_actions.rb'
|
||||
- 'lib/gitlab/usage_data_counters/track_unique_events.rb'
|
||||
- 'lib/object_storage/direct_upload.rb'
|
||||
- 'lib/tasks/tanuki_emoji.rake'
|
||||
- 'qa/qa/ee/resource/board/board_list/project/assignee_board_list.rb'
|
||||
- 'qa/qa/ee/resource/board/board_list/project/milestone_board_list.rb'
|
||||
- 'qa/qa/resource/snippet.rb'
|
||||
- 'qa/qa/specs/features/api/5_package/container_registry_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/3_create/repository/push_protected_branch_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/3_create/snippet/copy_snippet_file_contents_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/3_create/web_ide/open_fork_in_web_ide_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/3_create/web_ide/open_web_ide_from_diff_tab_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_omnibus_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/5_package/container_registry/container_registry_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/5_package/container_registry/online_garbage_collection_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/5_package/dependency_proxy/dependency_proxy_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/5_package/package_registry/composer_registry_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/5_package/package_registry/conan_repository_spec.rb'
|
||||
- 'qa/qa/specs/features/browser_ui/5_package/package_registry/generic_repository_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/browser_ui/5_package/package_registry/pypi_repository_spec.rb'
|
||||
- 'qa/qa/specs/features/ee/browser_ui/4_verify/new_discussion_not_dropping_merge_trains_mr_spec.rb'
|
||||
- 'qa/qa/specs/features/ee/browser_ui/9_enablement/elasticsearch/elasticsearch_reindexing_spec.rb'
|
||||
- 'spec/config/object_store_settings_spec.rb'
|
||||
- 'spec/config/smime_signature_settings_spec.rb'
|
||||
- 'spec/controllers/admin/groups_controller_spec.rb'
|
||||
- 'spec/controllers/application_controller_spec.rb'
|
||||
- 'spec/controllers/boards/issues_controller_spec.rb'
|
||||
- 'spec/controllers/boards/lists_controller_spec.rb'
|
||||
- 'spec/controllers/concerns/import_url_params_spec.rb'
|
||||
- 'spec/controllers/concerns/issuable_collections_spec.rb'
|
||||
- 'spec/controllers/groups/boards_controller_spec.rb'
|
||||
- 'spec/controllers/groups/group_members_controller_spec.rb'
|
||||
- 'spec/controllers/groups/packages_controller_spec.rb'
|
||||
- 'spec/controllers/groups/registry/repositories_controller_spec.rb'
|
||||
- 'spec/controllers/import/available_namespaces_controller_spec.rb'
|
||||
- 'spec/controllers/import/manifest_controller_spec.rb'
|
||||
- 'spec/controllers/projects/boards_controller_spec.rb'
|
||||
- 'spec/controllers/projects/branches_controller_spec.rb'
|
||||
- 'spec/controllers/projects/commit_controller_spec.rb'
|
||||
- 'spec/controllers/projects/commits_controller_spec.rb'
|
||||
- 'spec/controllers/projects/design_management/designs/raw_images_controller_spec.rb'
|
||||
- 'spec/controllers/projects/design_management/designs/resized_image_controller_spec.rb'
|
||||
- 'spec/controllers/projects/environments_controller_spec.rb'
|
||||
- 'spec/controllers/projects/feature_flags_controller_spec.rb'
|
||||
- 'spec/controllers/projects/grafana_api_controller_spec.rb'
|
||||
- 'spec/controllers/projects/group_links_controller_spec.rb'
|
||||
- 'spec/controllers/projects/issues_controller_spec.rb'
|
||||
- 'spec/controllers/projects/jobs_controller_spec.rb'
|
||||
- 'spec/controllers/projects/merge_requests/creations_controller_spec.rb'
|
||||
- 'spec/controllers/projects/merge_requests/drafts_controller_spec.rb'
|
||||
- 'spec/controllers/projects/merge_requests_controller_spec.rb'
|
||||
- 'spec/controllers/projects/milestones_controller_spec.rb'
|
||||
- 'spec/controllers/projects/notes_controller_spec.rb'
|
||||
- 'spec/controllers/projects/packages/packages_controller_spec.rb'
|
||||
- 'spec/controllers/projects/pipeline_schedules_controller_spec.rb'
|
||||
- 'spec/controllers/projects/pipelines_controller_spec.rb'
|
||||
- 'spec/controllers/projects/project_members_controller_spec.rb'
|
||||
- 'spec/controllers/projects/registry/repositories_controller_spec.rb'
|
||||
- 'spec/controllers/projects/registry/tags_controller_spec.rb'
|
||||
- 'spec/controllers/projects/web_ide_terminals_controller_spec.rb'
|
||||
- 'spec/controllers/projects_controller_spec.rb'
|
||||
- 'spec/factories/ci/builds.rb'
|
||||
- 'spec/factories/container_repositories.rb'
|
||||
- 'spec/factories/packages/debian/file_metadatum.rb'
|
||||
- 'spec/features/gitlab_experiments_spec.rb'
|
||||
- 'spec/frontend/fixtures/autocomplete_sources.rb'
|
||||
- 'spec/frontend/fixtures/blob.rb'
|
||||
- 'spec/frontend/fixtures/runner.rb'
|
||||
- 'spec/graphql/mutations/release_asset_links/create_spec.rb'
|
||||
- 'spec/graphql/resolvers/concerns/caching_array_resolver_spec.rb'
|
||||
- 'spec/graphql/types/ci/detailed_status_type_spec.rb'
|
||||
- 'spec/helpers/admin/deploy_key_helper_spec.rb'
|
||||
- 'spec/helpers/analytics/cycle_analytics_helper_spec.rb'
|
||||
- 'spec/helpers/ci/builds_helper_spec.rb'
|
||||
- 'spec/helpers/ci/jobs_helper_spec.rb'
|
||||
- 'spec/helpers/ci/pipeline_editor_helper_spec.rb'
|
||||
- 'spec/helpers/ci/runners_helper_spec.rb'
|
||||
- 'spec/helpers/deploy_tokens_helper_spec.rb'
|
||||
- 'spec/helpers/groups/settings_helper_spec.rb'
|
||||
- 'spec/helpers/issuables_helper_spec.rb'
|
||||
- 'spec/helpers/namespaces_helper_spec.rb'
|
||||
- 'spec/helpers/page_layout_helper_spec.rb'
|
||||
- 'spec/helpers/projects/cluster_agents_helper_spec.rb'
|
||||
- 'spec/helpers/releases_helper_spec.rb'
|
||||
- 'spec/helpers/routing/pseudonymization_helper_spec.rb'
|
||||
- 'spec/helpers/search_helper_spec.rb'
|
||||
- 'spec/helpers/sorting_helper_spec.rb'
|
||||
- 'spec/helpers/storage_helper_spec.rb'
|
||||
- 'spec/initializers/direct_upload_support_spec.rb'
|
||||
- 'spec/lib/api/entities/bulk_imports/export_status_spec.rb'
|
||||
- 'spec/lib/api/entities/design_management/design_spec.rb'
|
||||
- 'spec/lib/api/entities/merge_request_approvals_spec.rb'
|
||||
- 'spec/lib/api/entities/personal_access_token_spec.rb'
|
||||
- 'spec/lib/atlassian/jira_connect/client_spec.rb'
|
||||
- 'spec/lib/backup/database_spec.rb'
|
||||
- 'spec/lib/banzai/filter/audio_link_filter_spec.rb'
|
||||
- 'spec/lib/banzai/filter/repository_link_filter_spec.rb'
|
||||
- 'spec/lib/banzai/filter/video_link_filter_spec.rb'
|
||||
- 'spec/lib/bulk_imports/common/pipelines/milestones_pipeline_spec.rb'
|
||||
- 'spec/lib/bulk_imports/groups/pipelines/project_entities_pipeline_spec.rb'
|
||||
- 'spec/lib/bulk_imports/groups/pipelines/subgroup_entities_pipeline_spec.rb'
|
||||
- 'spec/lib/bulk_imports/projects/pipelines/container_expiration_policy_pipeline_spec.rb'
|
||||
- 'spec/lib/bulk_imports/projects/pipelines/project_feature_pipeline_spec.rb'
|
||||
- 'spec/lib/container_registry/client_spec.rb'
|
||||
- 'spec/lib/feature/definition_spec.rb'
|
||||
- 'spec/lib/gitlab/alert_management/payload/base_spec.rb'
|
||||
- 'spec/lib/gitlab/analytics/cycle_analytics/aggregated/records_fetcher_spec.rb'
|
||||
- 'spec/lib/gitlab/analytics/cycle_analytics/base_query_builder_spec.rb'
|
||||
- 'spec/lib/gitlab/analytics/cycle_analytics/records_fetcher_spec.rb'
|
||||
- 'spec/lib/gitlab/api_authentication/builder_spec.rb'
|
||||
- 'spec/lib/gitlab/asciidoc_spec.rb'
|
||||
- 'spec/lib/gitlab/auth/ldap/config_spec.rb'
|
||||
- 'spec/lib/gitlab/auth/o_auth/user_spec.rb'
|
||||
- 'spec/lib/gitlab/auth/request_authenticator_spec.rb'
|
||||
- 'spec/lib/gitlab/background_migration/fix_vulnerability_occurrences_with_hashes_as_raw_metadata_spec.rb'
|
||||
- 'spec/lib/gitlab/background_migration/migrate_u2f_webauthn_spec.rb'
|
||||
- 'spec/lib/gitlab/background_migration/recalculate_vulnerabilities_occurrences_uuid_spec.rb'
|
||||
- 'spec/lib/gitlab/bitbucket_import/importer_spec.rb'
|
||||
- 'spec/lib/gitlab/bitbucket_server_import/importer_spec.rb'
|
||||
- 'spec/lib/gitlab/changes_list_spec.rb'
|
||||
- 'spec/lib/gitlab/checks/changes_access_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/build/cache_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/build/step_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/config/entry/bridge_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/config/entry/product/variables_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/config/yaml/tags/resolver_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/config_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/parsers/codequality/code_climate_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/parsers/security/common_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/pipeline/chain/populate_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/pipeline/seed/build/cache_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/reports/coverage_reports_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/reports/security/identifier_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/reports/security/scanner_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/reports/terraform_reports_spec.rb'
|
||||
- 'spec/lib/gitlab/ci/yaml_processor_spec.rb'
|
||||
- 'spec/lib/gitlab/config_checker/external_database_checker_spec.rb'
|
||||
- 'spec/lib/gitlab/config_checker/puma_rugged_checker_spec.rb'
|
||||
- 'spec/lib/gitlab/data_builder/build_spec.rb'
|
||||
- 'spec/lib/gitlab/data_builder/pipeline_spec.rb'
|
||||
- 'spec/lib/gitlab/database/load_balancing/setup_spec.rb'
|
||||
- 'spec/lib/gitlab/database/partitioning_migration_helpers/table_management_helpers_spec.rb'
|
||||
- 'spec/lib/gitlab/database_spec.rb'
|
||||
- 'spec/lib/gitlab/diff/position_spec.rb'
|
||||
- 'spec/lib/gitlab/experimentation/controller_concern_spec.rb'
|
||||
- 'spec/lib/gitlab/experimentation_spec.rb'
|
||||
- 'spec/lib/gitlab/git/conflict/file_spec.rb'
|
||||
- 'spec/lib/gitlab/git/hook_env_spec.rb'
|
||||
- 'spec/lib/gitlab/git/repository_spec.rb'
|
||||
- 'spec/lib/gitlab/gitaly_client/operation_service_spec.rb'
|
||||
- 'spec/lib/gitlab/gitaly_client_spec.rb'
|
||||
- 'spec/lib/gitlab/github_import/importer/diff_note_importer_spec.rb'
|
||||
- 'spec/lib/gitlab/github_import/logger_spec.rb'
|
||||
- 'spec/lib/gitlab/github_import/object_counter_spec.rb'
|
||||
- 'spec/lib/gitlab/gpg_spec.rb'
|
||||
- 'spec/lib/gitlab/graphql/query_analyzers/logger_analyzer_spec.rb'
|
||||
- 'spec/lib/gitlab/graphql/tracers/logger_tracer_spec.rb'
|
||||
- 'spec/lib/gitlab/graphql/tracers/timer_tracer_spec.rb'
|
||||
- 'spec/lib/gitlab/hook_data/issuable_builder_spec.rb'
|
||||
- 'spec/lib/gitlab/http_spec.rb'
|
||||
- 'spec/lib/gitlab/i18n_spec.rb'
|
||||
- 'spec/lib/gitlab/import/logger_spec.rb'
|
||||
- 'spec/lib/gitlab/import_export/attributes_finder_spec.rb'
|
||||
- 'spec/lib/gitlab/import_export/members_mapper_spec.rb'
|
||||
- 'spec/lib/gitlab/instrumentation_helper_spec.rb'
|
||||
- 'spec/lib/gitlab/kubernetes/kubeconfig/template_spec.rb'
|
||||
- 'spec/lib/gitlab/kubernetes/rollout_instances_spec.rb'
|
||||
- 'spec/lib/gitlab/legacy_github_import/label_formatter_spec.rb'
|
||||
- 'spec/lib/gitlab/metrics/dashboard/importers/prometheus_metrics_spec.rb'
|
||||
- 'spec/lib/gitlab/metrics/subscribers/action_cable_spec.rb'
|
||||
- 'spec/lib/gitlab/middleware/multipart/handler_spec.rb'
|
||||
- 'spec/lib/gitlab/pagination/keyset/in_operator_optimization/order_by_columns_spec.rb'
|
||||
- 'spec/lib/gitlab/phabricator_import/conduit/user_spec.rb'
|
||||
- 'spec/lib/gitlab/prometheus_client_spec.rb'
|
||||
- 'spec/lib/gitlab/push_options_spec.rb'
|
||||
- 'spec/lib/gitlab/submodule_links_spec.rb'
|
||||
- 'spec/lib/gitlab/usage_data/topology_spec.rb'
|
||||
- 'spec/lib/gitlab/usage_data_spec.rb'
|
||||
- 'spec/lib/gitlab/utils_spec.rb'
|
||||
- 'spec/lib/gitlab/web_ide/config/entry/global_spec.rb'
|
||||
- 'spec/lib/mattermost/team_spec.rb'
|
||||
- 'spec/lib/microsoft_teams/activity_spec.rb'
|
||||
- 'spec/lib/peek/views/memory_spec.rb'
|
||||
- 'spec/mailers/emails/merge_requests_spec.rb'
|
||||
- 'spec/models/active_session_spec.rb'
|
||||
- 'spec/models/ci/pipeline_spec.rb'
|
||||
- 'spec/models/ci_platform_metric_spec.rb'
|
||||
- 'spec/models/clusters/applications/prometheus_spec.rb'
|
||||
- 'spec/models/event_spec.rb'
|
||||
- 'spec/models/gpg_key_spec.rb'
|
||||
- 'spec/models/integrations/base_chat_notification_spec.rb'
|
||||
- 'spec/models/integrations/chat_message/deployment_message_spec.rb'
|
||||
- 'spec/models/integrations/chat_message/issue_message_spec.rb'
|
||||
- 'spec/models/integrations/chat_message/merge_message_spec.rb'
|
||||
- 'spec/models/integrations/chat_message/note_message_spec.rb'
|
||||
- 'spec/models/integrations/chat_message/pipeline_message_spec.rb'
|
||||
- 'spec/models/integrations/chat_message/push_message_spec.rb'
|
||||
- 'spec/models/integrations/chat_message/wiki_page_message_spec.rb'
|
||||
- 'spec/models/integrations/packagist_spec.rb'
|
||||
- 'spec/models/integrations/prometheus_spec.rb'
|
||||
- 'spec/models/loose_foreign_keys/modification_tracker_spec.rb'
|
||||
- 'spec/models/merge_request_diff_commit_spec.rb'
|
||||
- 'spec/models/note_spec.rb'
|
||||
- 'spec/models/remote_mirror_spec.rb'
|
||||
- 'spec/requests/api/ci/runner/runners_post_spec.rb'
|
||||
- 'spec/requests/api/commit_statuses_spec.rb'
|
||||
- 'spec/requests/api/feature_flags_spec.rb'
|
||||
- 'spec/requests/api/feature_flags_user_lists_spec.rb'
|
||||
- 'spec/requests/api/graphql/ci/config_spec.rb'
|
||||
- 'spec/requests/api/graphql/group/milestones_spec.rb'
|
||||
- 'spec/requests/api/graphql/metrics/dashboard/annotations_spec.rb'
|
||||
- 'spec/requests/api/graphql/project/cluster_agents_spec.rb'
|
||||
- 'spec/requests/api/graphql/project/release_spec.rb'
|
||||
- 'spec/requests/api/graphql/project/terraform/state_spec.rb'
|
||||
- 'spec/requests/api/graphql/project/terraform/states_spec.rb'
|
||||
- 'spec/requests/api/graphql/project_query_spec.rb'
|
||||
- 'spec/requests/api/internal/base_spec.rb'
|
||||
- 'spec/requests/api/merge_requests_spec.rb'
|
||||
- 'spec/requests/api/project_import_spec.rb'
|
||||
- 'spec/requests/api/project_snapshots_spec.rb'
|
||||
- 'spec/requests/api/projects_spec.rb'
|
||||
- 'spec/requests/api/releases_spec.rb'
|
||||
- 'spec/requests/api/repositories_spec.rb'
|
||||
- 'spec/requests/api/settings_spec.rb'
|
||||
- 'spec/requests/api/task_completion_status_spec.rb'
|
||||
- 'spec/requests/api/unleash_spec.rb'
|
||||
- 'spec/requests/git_http_spec.rb'
|
||||
- 'spec/requests/groups/email_campaigns_controller_spec.rb'
|
||||
- 'spec/requests/jira_authorizations_spec.rb'
|
||||
- 'spec/requests/jira_connect/installations_controller_spec.rb'
|
||||
- 'spec/requests/lfs_http_spec.rb'
|
||||
- 'spec/serializers/blob_entity_spec.rb'
|
||||
- 'spec/services/ci/create_pipeline_service/custom_yaml_tags_spec.rb'
|
||||
- 'spec/services/ci/create_pipeline_service/parent_child_pipeline_spec.rb'
|
||||
- 'spec/services/ci/create_pipeline_service_spec.rb'
|
||||
- 'spec/services/ci/find_exposed_artifacts_service_spec.rb'
|
||||
- 'spec/services/ci/play_manual_stage_service_spec.rb'
|
||||
- 'spec/services/clusters/agents/create_service_spec.rb'
|
||||
- 'spec/services/clusters/applications/check_ingress_ip_address_service_spec.rb'
|
||||
- 'spec/services/clusters/aws/authorize_role_service_spec.rb'
|
||||
- 'spec/services/clusters/update_service_spec.rb'
|
||||
- 'spec/services/commits/tag_service_spec.rb'
|
||||
- 'spec/services/git/branch_push_service_spec.rb'
|
||||
- 'spec/services/import/github_service_spec.rb'
|
||||
- 'spec/services/import/gitlab_projects/file_acquisition_strategies/remote_file_spec.rb'
|
||||
- 'spec/services/merge_requests/create_service_spec.rb'
|
||||
- 'spec/services/merge_requests/get_urls_service_spec.rb'
|
||||
- 'spec/services/merge_requests/refresh_service_spec.rb'
|
||||
- 'spec/services/merge_requests/update_service_spec.rb'
|
||||
- 'spec/services/metrics/dashboard/transient_embed_service_spec.rb'
|
||||
- 'spec/services/notes/render_service_spec.rb'
|
||||
- 'spec/services/packages/debian/parse_debian822_service_spec.rb'
|
||||
- 'spec/services/pod_logs/base_service_spec.rb'
|
||||
- 'spec/services/pod_logs/elasticsearch_service_spec.rb'
|
||||
- 'spec/services/pod_logs/kubernetes_service_spec.rb'
|
||||
- 'spec/services/projects/container_repository/delete_tags_service_spec.rb'
|
||||
- 'spec/services/projects/create_from_template_service_spec.rb'
|
||||
- 'spec/services/projects/lfs_pointers/lfs_download_service_spec.rb'
|
||||
- 'spec/services/projects/operations/update_service_spec.rb'
|
||||
- 'spec/services/projects/update_service_spec.rb'
|
||||
- 'spec/services/snippets/count_service_spec.rb'
|
||||
- 'spec/sidekiq_cluster/sidekiq_cluster_spec.rb'
|
||||
- 'spec/support/atlassian/jira_connect/schemata.rb'
|
||||
- 'spec/support/helpers/kubernetes_helpers.rb'
|
||||
- 'spec/support/helpers/login_helpers.rb'
|
||||
- 'spec/support/helpers/prometheus_helpers.rb'
|
||||
- 'spec/support/helpers/stub_object_storage.rb'
|
||||
- 'spec/support/helpers/wiki_helpers.rb'
|
||||
- 'spec/support/migrations_helpers/namespaces_helper.rb'
|
||||
- 'spec/support/migrations_helpers/vulnerabilities_findings_helper.rb'
|
||||
- 'spec/support/shared_contexts/fixtures/analytics_shared_context.rb'
|
||||
- 'spec/support/shared_contexts/lib/container_registry/client_shared_context.rb'
|
||||
- 'spec/support/shared_examples/graphql/spam_protection_shared_examples.rb'
|
||||
- 'spec/support/shared_examples/metrics/active_record_subscriber_shared_examples.rb'
|
||||
- 'spec/support/shared_examples/models/clusters/prometheus_client_shared.rb'
|
||||
- 'spec/support/shared_examples/models/cycle_analytics_stage_shared_examples.rb'
|
||||
- 'spec/support/shared_examples/models/issuable_hook_data_shared_examples.rb'
|
||||
- 'spec/support/shared_examples/requests/rack_attack_shared_examples.rb'
|
||||
- 'spec/support_specs/graphql/arguments_spec.rb'
|
||||
- 'spec/support_specs/graphql/field_selection_spec.rb'
|
||||
- 'spec/support_specs/matchers/exceed_query_limit_helpers_spec.rb'
|
||||
- 'spec/tasks/gitlab/backup_rake_spec.rb'
|
||||
- 'spec/tooling/danger/datateam_spec.rb'
|
||||
- 'spec/tooling/lib/tooling/kubernetes_client_spec.rb'
|
||||
- 'spec/workers/concerns/gitlab/github_import/object_importer_spec.rb'
|
|
@ -202,7 +202,7 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController
|
|||
Gitlab::QueryLimiting.disable!('https://gitlab.com/gitlab-org/gitlab/-/issues/29418')
|
||||
end
|
||||
|
||||
def application_setting_params
|
||||
def application_setting_params # rubocop:disable Metrics/AbcSize
|
||||
params[:application_setting] ||= {}
|
||||
|
||||
if params[:application_setting].key?(:enabled_oauth_sign_in_sources)
|
||||
|
@ -229,6 +229,10 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController
|
|||
params.delete(:domain_denylist_raw) if params[:domain_denylist]
|
||||
params.delete(:domain_allowlist_raw) if params[:domain_allowlist]
|
||||
|
||||
if params[:application_setting].key?(:user_email_lookup_limit)
|
||||
params[:application_setting][:search_rate_limit] ||= params[:application_setting][:user_email_lookup_limit]
|
||||
end
|
||||
|
||||
params[:application_setting].permit(visible_application_setting_attributes)
|
||||
end
|
||||
|
||||
|
|
|
@ -390,7 +390,7 @@ listed in the descriptions of the relevant settings.
|
|||
| `push_event_hooks_limit` | integer | no | Number of changes (branches or tags) in a single push to determine whether webhooks and services fire or not. Webhooks and services aren't submitted if it surpasses that value. |
|
||||
| `rate_limiting_response_text` | string | no | When rate limiting is enabled via the `throttle_*` settings, send this plain text response when a rate limit is exceeded. 'Retry later' is sent if this is blank. |
|
||||
| `raw_blob_request_limit` | integer | no | Max number of requests per minute for each raw path. Default: 300. To disable throttling set to 0.|
|
||||
| `user_email_lookup_limit` | integer | no | **{warning}** **[Removed](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/80631/)** in GitLab 14.9. Replaced by `search_rate_limit`. Max number of requests per minute for email lookup. Default: 60. To disable throttling set to 0.|
|
||||
| `user_email_lookup_limit` | integer | no | **{warning}** **[Deprecated](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/80631/)** in GitLab 14.9 will be removed in 15.0. Replaced by `search_rate_limit`. Max number of requests per minute for email lookup. Default: 60. To disable throttling set to 0.|
|
||||
| `search_rate_limit` | integer | no | Max number of requests per minute for performing a search while authenticated. Default: 30. To disable throttling set to 0.|
|
||||
| `search_rate_limit_unauthenticated` | integer | no | Max number of requests per minute for performing a search while unauthenticated. Default: 10. To disable throttling set to 0.|
|
||||
| `recaptcha_enabled` | boolean | no | (**If enabled, requires:** `recaptcha_private_key` and `recaptcha_site_key`) Enable reCAPTCHA. |
|
||||
|
|
|
@ -2,6 +2,14 @@
|
|||
|
||||
databases = ActiveRecord::Tasks::DatabaseTasks.setup_initial_database_yaml
|
||||
|
||||
def each_database(databases, include_geo: false)
|
||||
ActiveRecord::Tasks::DatabaseTasks.for_each(databases) do |database|
|
||||
next if !include_geo && database == 'geo'
|
||||
|
||||
yield database
|
||||
end
|
||||
end
|
||||
|
||||
namespace :gitlab do
|
||||
namespace :db do
|
||||
desc 'GitLab | DB | Manually insert schema migration version on all configured databases'
|
||||
|
@ -10,10 +18,10 @@ namespace :gitlab do
|
|||
end
|
||||
|
||||
namespace :mark_migration_complete do
|
||||
ActiveRecord::Tasks::DatabaseTasks.for_each(databases) do |database|
|
||||
desc "Gitlab | DB | Manually insert schema migration version on #{database} database"
|
||||
task database, [:version] => :environment do |_, args|
|
||||
mark_migration_complete(args[:version], only_on: database)
|
||||
each_database(databases) do |database_name|
|
||||
desc "Gitlab | DB | Manually insert schema migration version on #{database_name} database"
|
||||
task database_name, [:version] => :environment do |_, args|
|
||||
mark_migration_complete(args[:version], only_on: database_name)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -39,10 +47,10 @@ namespace :gitlab do
|
|||
end
|
||||
|
||||
namespace :drop_tables do
|
||||
ActiveRecord::Tasks::DatabaseTasks.for_each(databases) do |database|
|
||||
desc "GitLab | DB | Drop all tables on the #{database} database"
|
||||
task database => :environment do
|
||||
drop_tables(only_on: database)
|
||||
each_database(databases) do |database_name|
|
||||
desc "GitLab | DB | Drop all tables on the #{database_name} database"
|
||||
task database_name => :environment do
|
||||
drop_tables(only_on: database_name)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -155,6 +163,15 @@ namespace :gitlab do
|
|||
Gitlab::Database::Partitioning.sync_partitions
|
||||
end
|
||||
|
||||
namespace :create_dynamic_partitions do
|
||||
each_database(databases) do |database_name|
|
||||
desc "Create missing dynamic database partitions on the #{database_name} database"
|
||||
task database_name => :environment do
|
||||
Gitlab::Database::Partitioning.sync_partitions(only_on: database_name)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
# This is targeted towards deploys and upgrades of GitLab.
|
||||
# Since we're running migrations already at this time,
|
||||
# we also check and create partitions as needed here.
|
||||
|
@ -162,14 +179,12 @@ namespace :gitlab do
|
|||
Rake::Task['gitlab:db:create_dynamic_partitions'].invoke
|
||||
end
|
||||
|
||||
ActiveRecord::Tasks::DatabaseTasks.for_each(databases) do |name|
|
||||
# We'll temporarily skip this enhancement for geo, since in some situations we
|
||||
# wish to setup the geo database before the other databases have been setup,
|
||||
# and partition management attempts to connect to the main database.
|
||||
next if name == 'geo'
|
||||
|
||||
Rake::Task["db:migrate:#{name}"].enhance do
|
||||
Rake::Task['gitlab:db:create_dynamic_partitions'].invoke
|
||||
# We'll temporarily skip this enhancement for geo, since in some situations we
|
||||
# wish to setup the geo database before the other databases have been setup,
|
||||
# and partition management attempts to connect to the main database.
|
||||
each_database(databases) do |database_name|
|
||||
Rake::Task["db:migrate:#{database_name}"].enhance do
|
||||
Rake::Task["gitlab:db:create_dynamic_partitions:#{database_name}"].invoke
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -185,15 +200,15 @@ namespace :gitlab do
|
|||
Rake::Task['gitlab:db:create_dynamic_partitions'].invoke
|
||||
end
|
||||
|
||||
ActiveRecord::Tasks::DatabaseTasks.for_each(databases) do |name|
|
||||
# We'll temporarily skip this enhancement for geo, since in some situations we
|
||||
# wish to setup the geo database before the other databases have been setup,
|
||||
# and partition management attempts to connect to the main database.
|
||||
next if name == 'geo'
|
||||
|
||||
Rake::Task["db:schema:load:#{name}"].enhance do
|
||||
Rake::Task['gitlab:db:create_dynamic_partitions'].invoke
|
||||
# We'll temporarily skip this enhancement for geo, since in some situations we
|
||||
# wish to setup the geo database before the other databases have been setup,
|
||||
# and partition management attempts to connect to the main database.
|
||||
each_database(databases) do |database_name|
|
||||
# :nocov:
|
||||
Rake::Task["db:schema:load:#{database_name}"].enhance do
|
||||
Rake::Task["gitlab:db:create_dynamic_partitions:#{database_name}"].invoke
|
||||
end
|
||||
# :nocov:
|
||||
end
|
||||
|
||||
desc "Clear all connections"
|
||||
|
@ -229,7 +244,7 @@ namespace :gitlab do
|
|||
end
|
||||
|
||||
namespace :reindex do
|
||||
ActiveRecord::Tasks::DatabaseTasks.for_each(databases) do |database_name|
|
||||
each_database(databases) do |database_name|
|
||||
desc "Reindex #{database_name} database without downtime to eliminate bloat"
|
||||
task database_name => :environment do
|
||||
unless Gitlab::Database::Reindexing.enabled?
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
module QA
|
||||
RSpec.describe 'Verify', :smoke, :runner do
|
||||
RSpec.describe 'Verify', :smoke, :runner, quarantine: {
|
||||
issue: 'https://gitlab.com/gitlab-org/gitlab/-/issues/356295',
|
||||
type: :investigating
|
||||
} do
|
||||
describe 'Pipeline creation and processing' do
|
||||
let(:executor) { "qa-runner-#{Time.now.to_i}" }
|
||||
|
||||
|
|
|
@ -291,6 +291,46 @@ RSpec.describe Admin::ApplicationSettingsController, :do_not_mock_admin_mode_set
|
|||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe 'user_email_lookup_limit aliasing' do
|
||||
let(:application_setting) { ApplicationSetting.current }
|
||||
let(:user_email_lookup_limit) { 8675 }
|
||||
let(:search_rate_limit) { 309 }
|
||||
|
||||
context 'when search_rate_limit is specified' do
|
||||
let(:settings_params) do
|
||||
{
|
||||
user_email_lookup_limit: user_email_lookup_limit,
|
||||
search_rate_limit: search_rate_limit
|
||||
}
|
||||
end
|
||||
|
||||
it 'updates search_rate_limit with correct value' do
|
||||
expect(application_setting.search_rate_limit).not_to eq user_email_lookup_limit
|
||||
expect(application_setting.search_rate_limit).not_to eq search_rate_limit
|
||||
|
||||
put :update, params: { application_setting: settings_params }
|
||||
|
||||
expect(application_setting.reload.search_rate_limit).to eq search_rate_limit
|
||||
end
|
||||
end
|
||||
|
||||
context 'when search_rate_limit is not specified' do
|
||||
let(:settings_params) do
|
||||
{
|
||||
user_email_lookup_limit: search_rate_limit
|
||||
}
|
||||
end
|
||||
|
||||
it 'applies user_email_lookup_limit value to search_rate_limit' do
|
||||
expect(application_setting.search_rate_limit).not_to eq search_rate_limit
|
||||
|
||||
put :update, params: { application_setting: settings_params }
|
||||
|
||||
expect(application_setting.reload.search_rate_limit).to eq search_rate_limit
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
describe 'PUT #reset_registration_token' do
|
||||
|
|
|
@ -80,6 +80,17 @@ RSpec.describe 'gitlab:db namespace rake task', :silence_stdout do
|
|||
run_rake_task('gitlab:db:mark_migration_complete:main', '[123]')
|
||||
end
|
||||
end
|
||||
|
||||
context 'with geo configured' do
|
||||
before do
|
||||
skip_unless_geo_configured
|
||||
end
|
||||
|
||||
it 'does not create a task for the geo database' do
|
||||
expect { run_rake_task('gitlab:db:mark_migration_complete:geo') }
|
||||
.to raise_error(/Don't know how to build task 'gitlab:db:mark_migration_complete:geo'/)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'when the migration is already marked complete' do
|
||||
|
@ -319,6 +330,17 @@ RSpec.describe 'gitlab:db namespace rake task', :silence_stdout do
|
|||
run_rake_task('gitlab:db:drop_tables:main')
|
||||
end
|
||||
end
|
||||
|
||||
context 'with geo configured' do
|
||||
before do
|
||||
skip_unless_geo_configured
|
||||
end
|
||||
|
||||
it 'does not create a task for the geo database' do
|
||||
expect { run_rake_task('gitlab:db:drop_tables:geo') }
|
||||
.to raise_error(/Don't know how to build task 'gitlab:db:drop_tables:geo'/)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def expect_objects_to_be_dropped(connection)
|
||||
|
@ -336,38 +358,115 @@ RSpec.describe 'gitlab:db namespace rake task', :silence_stdout do
|
|||
end
|
||||
end
|
||||
|
||||
describe 'reindex' do
|
||||
it 'delegates to Gitlab::Database::Reindexing' do
|
||||
expect(Gitlab::Database::Reindexing).to receive(:invoke)
|
||||
describe 'create_dynamic_partitions' do
|
||||
context 'with a single database' do
|
||||
before do
|
||||
skip_if_multiple_databases_are_setup
|
||||
end
|
||||
|
||||
run_rake_task('gitlab:db:reindex')
|
||||
it 'delegates syncing of partitions without limiting databases' do
|
||||
expect(Gitlab::Database::Partitioning).to receive(:sync_partitions)
|
||||
|
||||
run_rake_task('gitlab:db:create_dynamic_partitions')
|
||||
end
|
||||
end
|
||||
|
||||
context 'when reindexing is not enabled' do
|
||||
it 'is a no-op' do
|
||||
expect(Gitlab::Database::Reindexing).to receive(:enabled?).and_return(false)
|
||||
expect(Gitlab::Database::Reindexing).not_to receive(:invoke)
|
||||
context 'with multiple databases' do
|
||||
before do
|
||||
skip_if_multiple_databases_not_setup
|
||||
end
|
||||
|
||||
expect { run_rake_task('gitlab:db:reindex') }.to raise_error(SystemExit)
|
||||
context 'when running the multi-database variant' do
|
||||
it 'delegates syncing of partitions without limiting databases' do
|
||||
expect(Gitlab::Database::Partitioning).to receive(:sync_partitions)
|
||||
|
||||
run_rake_task('gitlab:db:create_dynamic_partitions')
|
||||
end
|
||||
end
|
||||
|
||||
context 'when running a single-database variant' do
|
||||
it 'delegates syncing of partitions for the chosen database' do
|
||||
expect(Gitlab::Database::Partitioning).to receive(:sync_partitions).with(only_on: 'main')
|
||||
|
||||
run_rake_task('gitlab:db:create_dynamic_partitions:main')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with geo configured' do
|
||||
before do
|
||||
skip_unless_geo_configured
|
||||
end
|
||||
|
||||
it 'does not create a task for the geo database' do
|
||||
expect { run_rake_task('gitlab:db:create_dynamic_partitions:geo') }
|
||||
.to raise_error(/Don't know how to build task 'gitlab:db:create_dynamic_partitions:geo'/)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
databases = ActiveRecord::Tasks::DatabaseTasks.setup_initial_database_yaml
|
||||
ActiveRecord::Tasks::DatabaseTasks.for_each(databases) do |database_name|
|
||||
describe "reindex:#{database_name}" do
|
||||
it 'delegates to Gitlab::Database::Reindexing' do
|
||||
expect(Gitlab::Database::Reindexing).to receive(:invoke).with(database_name)
|
||||
describe 'reindex' do
|
||||
context 'with a single database' do
|
||||
before do
|
||||
skip_if_multiple_databases_are_setup
|
||||
end
|
||||
|
||||
run_rake_task("gitlab:db:reindex:#{database_name}")
|
||||
it 'delegates to Gitlab::Database::Reindexing' do
|
||||
expect(Gitlab::Database::Reindexing).to receive(:invoke).with(no_args)
|
||||
|
||||
run_rake_task('gitlab:db:reindex')
|
||||
end
|
||||
|
||||
context 'when reindexing is not enabled' do
|
||||
it 'is a no-op' do
|
||||
expect(Gitlab::Database::Reindexing).to receive(:enabled?).and_return(false)
|
||||
expect(Gitlab::Database::Reindexing).not_to receive(:invoke).with(database_name)
|
||||
expect(Gitlab::Database::Reindexing).not_to receive(:invoke)
|
||||
|
||||
expect { run_rake_task("gitlab:db:reindex:#{database_name}") }.to raise_error(SystemExit)
|
||||
expect { run_rake_task('gitlab:db:reindex') }.to raise_error(SystemExit)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with multiple databases' do
|
||||
let(:base_models) { { 'main' => double(:model), 'ci' => double(:model) } }
|
||||
|
||||
before do
|
||||
skip_if_multiple_databases_not_setup
|
||||
|
||||
allow(Gitlab::Database).to receive(:database_base_models).and_return(base_models)
|
||||
end
|
||||
|
||||
it 'delegates to Gitlab::Database::Reindexing without a specific database' do
|
||||
expect(Gitlab::Database::Reindexing).to receive(:invoke).with(no_args)
|
||||
|
||||
run_rake_task('gitlab:db:reindex')
|
||||
end
|
||||
|
||||
context 'when the single database task is used' do
|
||||
it 'delegates to Gitlab::Database::Reindexing with a specific database' do
|
||||
expect(Gitlab::Database::Reindexing).to receive(:invoke).with('ci')
|
||||
|
||||
run_rake_task('gitlab:db:reindex:ci')
|
||||
end
|
||||
|
||||
context 'when reindexing is not enabled' do
|
||||
it 'is a no-op' do
|
||||
expect(Gitlab::Database::Reindexing).to receive(:enabled?).and_return(false)
|
||||
expect(Gitlab::Database::Reindexing).not_to receive(:invoke)
|
||||
|
||||
expect { run_rake_task('gitlab:db:reindex:ci') }.to raise_error(SystemExit)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'with geo configured' do
|
||||
before do
|
||||
skip_unless_geo_configured
|
||||
end
|
||||
|
||||
it 'does not create a task for the geo database' do
|
||||
expect { run_rake_task('gitlab:db:reindex:geo') }
|
||||
.to raise_error(/Don't know how to build task 'gitlab:db:reindex:geo'/)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -466,7 +565,7 @@ RSpec.describe 'gitlab:db namespace rake task', :silence_stdout do
|
|||
skip_if_multiple_databases_not_setup
|
||||
end
|
||||
|
||||
describe 'db:structure:dump' do
|
||||
describe 'db:structure:dump against a single database' do
|
||||
it 'invokes gitlab:db:clean_structure_sql' do
|
||||
expect(Rake::Task['gitlab:db:clean_structure_sql']).to receive(:invoke).twice.and_return(true)
|
||||
|
||||
|
@ -474,7 +573,7 @@ RSpec.describe 'gitlab:db namespace rake task', :silence_stdout do
|
|||
end
|
||||
end
|
||||
|
||||
describe 'db:schema:dump' do
|
||||
describe 'db:schema:dump against a single database' do
|
||||
it 'invokes gitlab:db:clean_structure_sql' do
|
||||
expect(Rake::Task['gitlab:db:clean_structure_sql']).to receive(:invoke).once.and_return(true)
|
||||
|
||||
|
@ -482,26 +581,24 @@ RSpec.describe 'gitlab:db namespace rake task', :silence_stdout do
|
|||
end
|
||||
end
|
||||
|
||||
describe 'db:migrate' do
|
||||
it 'invokes gitlab:db:create_dynamic_partitions' do
|
||||
expect(Rake::Task['gitlab:db:create_dynamic_partitions']).to receive(:invoke).once.and_return(true)
|
||||
describe 'db:migrate against a single database' do
|
||||
it 'invokes gitlab:db:create_dynamic_partitions for the same database' do
|
||||
expect(Rake::Task['gitlab:db:create_dynamic_partitions:main']).to receive(:invoke).once.and_return(true)
|
||||
|
||||
expect { run_rake_task('db:migrate:main') }.not_to raise_error
|
||||
end
|
||||
end
|
||||
|
||||
describe 'db:migrate:geo' do
|
||||
it 'does not invoke gitlab:db:create_dynamic_partitions' do
|
||||
skip 'Skipping because geo database is not setup' unless geo_configured?
|
||||
before do
|
||||
skip_unless_geo_configured
|
||||
end
|
||||
|
||||
it 'does not invoke gitlab:db:create_dynamic_partitions' do
|
||||
expect(Rake::Task['gitlab:db:create_dynamic_partitions']).not_to receive(:invoke)
|
||||
|
||||
expect { run_rake_task('db:migrate:geo') }.not_to raise_error
|
||||
end
|
||||
|
||||
def geo_configured?
|
||||
!!ActiveRecord::Base.configurations.configs_for(env_name: Rails.env, name: 'geo')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -559,4 +656,12 @@ RSpec.describe 'gitlab:db namespace rake task', :silence_stdout do
|
|||
|
||||
run_rake_task(test_task_name)
|
||||
end
|
||||
|
||||
def skip_unless_geo_configured
|
||||
skip 'Skipping because the geo database is not configured' unless geo_configured?
|
||||
end
|
||||
|
||||
def geo_configured?
|
||||
!!ActiveRecord::Base.configurations.configs_for(env_name: Rails.env, name: 'geo')
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue