From 15dbf53ff692db9233bea18833ded06000855320 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 4 Jun 2024 12:22:46 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .rubocop.yml | 2 +- ...s.yml => batched_migration_base_class.yml} | 2 +- .../rspec/before_all_role_assignment.yml | 1 + .rubocop_todo/rspec/feature_category.yml | 1 - .../ci_resource_header_skeleton_loader.vue | 2 +- .../diffs/components/diff_content.vue | 2 +- .../environment_details/pagination.vue | 2 +- .../groups_explore_empty_state.vue | 4 +- .../lib/gitlab_web_ide/setup_root_element.js | 8 +- .../incidents/timeline_events_item.vue | 2 +- .../components/discussion_filter_note.vue | 2 +- .../components/widget/status_icon.vue | 2 +- .../components/incubation/pagination.vue | 2 +- .../components/notes/skeleton_note.vue | 2 +- .../components/notes/system_note.vue | 2 +- .../components/notes/timeline_icon.vue | 2 +- .../components/registry/history_item.vue | 2 +- .../components/notes/system_note.vue | 2 +- .../work_item_history_only_filter_note.vue | 2 +- .../work_item_description_rendered.vue | 2 +- .../secondary_navigation_elements.scss | 2 + app/assets/stylesheets/pages/notes.scss | 4 +- app/controllers/concerns/group_tree.rb | 4 +- app/controllers/explore/groups_controller.rb | 11 +- .../ci/daily_build_group_report_result.rb | 3 + .../policies/dependency_proxy/group_policy.rb | 21 +- ...daily_build_group_report_result_service.rb | 3 +- .../dependency_proxy/auth_token_service.rb | 4 +- app/services/members/update_service.rb | 6 +- app/views/explore/groups/index.html.haml | 5 +- app/views/projects/imports/show.html.haml | 2 +- app/views/shared/notes/_note.html.haml | 2 +- .../parse_ci_job_timestamps.yml | 9 + .../rate_limiting_user_endpoints.yml | 8 + ...0216174956_i_analytics_cohorts_monthly.yml | 2 - .../20210216180424_i_search_total_monthly.yml | 2 - ...431_search_total_unique_counts_monthly.yml | 2 - .../counts_28d/20210216180816_groups.yml | 2 - .../20210216180818_users_created.yml | 2 - ...3_product_analytics_test_metrics_union.yml | 2 - ...ct_analytics_test_metrics_intersection.yml | 2 - .../20210216183627_omniauth_providers.yml | 2 - ...h_unique_visits_for_any_target_monthly.yml | 2 - ...40_testing_total_unique_counts_monthly.yml | 2 - ...panding_secure_security_report_monthly.yml | 2 - .../20210910132229_user_auth_by_provider.yml | 2 - .../20210916080405_promoted_issues.yml | 2 - ...lates_security_sast_iac_latest_monthly.yml | 2 - ...licit_security_sast_iac_latest_monthly.yml | 2 - ...templates_jobs_sast_iac_latest_monthly.yml | 2 - ..._implicit_jobs_sast_iac_latest_monthly.yml | 2 - ...curity_dast_on_demand_api_scan_monthly.yml | 2 - ...licit_security_dast_api_latest_monthly.yml | 2 - ...ting_license_compliance_report_monthly.yml | 2 - ...license_compliance_full_report_monthly.yml | 2 - ...lates_security_dast_api_latest_monthly.yml | 2 - ...ting_manage_license_compliance_monthly.yml | 2 - ...ting_visiting_external_website_monthly.yml | 2 - ...licit_jobs_dependency_scanning_monthly.yml | 2 - ...implicit_jobs_license_scanning_monthly.yml | 2 - ...lates_jobs_dependency_scanning_monthly.yml | 2 - ...emplates_jobs_license_scanning_monthly.yml | 2 - ..._ci_templates_jobs_sast_latest_monthly.yml | 2 - ...s_jobs_secret_detection_latest_monthly.yml | 2 - ...t_jobs_secret_detection_latest_monthly.yml | 2 - ...ates_implicit_jobs_sast_latest_monthly.yml | 2 - ...3_p_ci_templates_jobs_sast_iac_monthly.yml | 2 - ...ci_templates_security_sast_iac_monthly.yml | 2 - ...1145023_p_ci_templates_katalon_monthly.yml | 2 - ...ates_security_fortify_fod_sast_monthly.yml | 2 - ...icit_security_fortify_fod_sast_monthly.yml | 2 - .../20220825232557_count_user_auth.yml | 2 - ...tes_implicit_security_sast_iac_monthly.yml | 2 - ...mplates_implicit_jobs_sast_iac_monthly.yml | 2 - ...obs_dependency_scanning_latest_monthly.yml | 2 - ...rity_container_scanning_latest_monthly.yml | 2 - ...s_jobs_license_scanning_latest_monthly.yml | 2 - ...obs_dependency_scanning_latest_monthly.yml | 2 - ...t_jobs_license_scanning_latest_monthly.yml | 2 - ...rity_container_scanning_latest_monthly.yml | 2 - ...curity_coverage_fuzzing_latest_monthly.yml | 2 - ...curity_coverage_fuzzing_latest_monthly.yml | 2 - ...plicit_jobs_container_scanning_monthly.yml | 2 - ...jobs_container_scanning_latest_monthly.yml | 2 - ...plates_jobs_container_scanning_monthly.yml | 2 - ...mplates_security_api_discovery_monthly.yml | 2 - ..._templates_security_bas_latest_monthly.yml | 2 - .../20210216180416_i_search_total.yml | 2 - .../20210216180422_i_search_total_weekly.yml | 2 - ...0429_search_total_unique_counts_weekly.yml | 2 - ...3_product_analytics_test_metrics_union.yml | 2 - ...ct_analytics_test_metrics_intersection.yml | 2 - ...xpanding_secure_security_report_weekly.yml | 2 - ...plates_security_sast_iac_latest_weekly.yml | 2 - ...plicit_security_sast_iac_latest_weekly.yml | 2 - ..._templates_jobs_sast_iac_latest_weekly.yml | 2 - ...s_implicit_jobs_sast_iac_latest_weekly.yml | 2 - ...ecurity_dast_on_demand_api_scan_weekly.yml | 2 - ...plicit_security_dast_api_latest_weekly.yml | 2 - ...sting_license_compliance_report_weekly.yml | 2 - ..._license_compliance_full_report_weekly.yml | 2 - ...plates_security_dast_api_latest_weekly.yml | 2 - ...iting_manage_license_compliance_weekly.yml | 2 - ...sting_visiting_external_website_weekly.yml | 2 - ...plicit_jobs_dependency_scanning_weekly.yml | 2 - ..._implicit_jobs_license_scanning_weekly.yml | 2 - ...plates_jobs_dependency_scanning_weekly.yml | 2 - ...templates_jobs_license_scanning_weekly.yml | 2 - ...p_ci_templates_jobs_sast_latest_weekly.yml | 2 - ...es_jobs_secret_detection_latest_weekly.yml | 2 - ...it_jobs_secret_detection_latest_weekly.yml | 2 - ...lates_implicit_jobs_sast_latest_weekly.yml | 2 - ...37_p_ci_templates_jobs_sast_iac_weekly.yml | 2 - ..._ci_templates_security_sast_iac_weekly.yml | 2 - ...31145014_p_ci_templates_katalon_weekly.yml | 2 - ...lates_security_fortify_fod_sast_weekly.yml | 2 - ...licit_security_fortify_fod_sast_weekly.yml | 2 - ...ates_implicit_security_sast_iac_weekly.yml | 2 - ...emplates_implicit_jobs_sast_iac_weekly.yml | 2 - ...jobs_dependency_scanning_latest_weekly.yml | 2 - ...urity_container_scanning_latest_weekly.yml | 2 - ...es_jobs_license_scanning_latest_weekly.yml | 2 - ...jobs_dependency_scanning_latest_weekly.yml | 2 - ...it_jobs_license_scanning_latest_weekly.yml | 2 - ...urity_container_scanning_latest_weekly.yml | 2 - ...ecurity_coverage_fuzzing_latest_weekly.yml | 2 - ...ecurity_coverage_fuzzing_latest_weekly.yml | 2 - ...mplicit_jobs_container_scanning_weekly.yml | 2 - ..._jobs_container_scanning_latest_weekly.yml | 2 - ...mplates_jobs_container_scanning_weekly.yml | 2 - ...emplates_security_api_discovery_weekly.yml | 2 - ...i_templates_security_bas_latest_weekly.yml | 2 - .../20210216180413_all_searches.yml | 2 - .../20210216180414_navbar_searches.yml | 2 - .../counts_all/20210216180750_groups.yml | 2 - .../counts_all/20210216180752_keys.yml | 2 - .../counts_all/20210216180756_groups.yml | 2 - .../20210216180758_users_created.yml | 2 - .../20210216183400_omniauth_providers.yml | 2 - ..._product_marketing_email_create_0_sent.yml | 2 - ...t_marketing_email_create_0_cta_clicked.yml | 2 - ..._product_marketing_email_create_1_sent.yml | 2 - ...t_marketing_email_create_1_cta_clicked.yml | 2 - ..._product_marketing_email_create_2_sent.yml | 2 - ...t_marketing_email_create_2_cta_clicked.yml | 2 - ..._product_marketing_email_verify_0_sent.yml | 2 - ...t_marketing_email_verify_0_cta_clicked.yml | 2 - ..._product_marketing_email_verify_1_sent.yml | 2 - ...t_marketing_email_verify_1_cta_clicked.yml | 2 - ..._product_marketing_email_verify_2_sent.yml | 2 - ...t_marketing_email_verify_2_cta_clicked.yml | 2 - ...n_product_marketing_email_trial_0_sent.yml | 2 - ...ct_marketing_email_trial_0_cta_clicked.yml | 2 - ...n_product_marketing_email_trial_1_sent.yml | 2 - ...ct_marketing_email_trial_1_cta_clicked.yml | 2 - ...n_product_marketing_email_trial_2_sent.yml | 2 - ...ct_marketing_email_trial_2_cta_clicked.yml | 2 - ...in_product_marketing_email_team_0_sent.yml | 2 - ...uct_marketing_email_team_0_cta_clicked.yml | 2 - ...in_product_marketing_email_team_1_sent.yml | 2 - ...uct_marketing_email_team_1_cta_clicked.yml | 2 - ...in_product_marketing_email_team_2_sent.yml | 2 - ...uct_marketing_email_team_2_cta_clicked.yml | 2 - ...duct_marketing_email_experience_0_sent.yml | 2 - ...rketing_email_team_short_0_cta_clicked.yml | 2 - ...duct_marketing_email_team_short_0_sent.yml | 2 - ...keting_email_trial_short_0_cta_clicked.yml | 2 - ...uct_marketing_email_trial_short_0_sent.yml | 2 - ...eting_email_admin_verify_0_cta_clicked.yml | 2 - ...ct_marketing_email_admin_verify_0_sent.yml | 2 - .../20210910132001_user_auth_by_provider.yml | 2 - ...02_service_usage_data_download_payload.yml | 2 - .../20220825232556_count_user_auth.yml | 2 - ...ick_create_confidential_mr_issues_list.yml | 2 - ...ount_total_click_create_mr_issues_list.yml | 2 - ...tal_click_new_merge_request_empty_list.yml | 2 - ...unt_total_click_new_merge_request_list.yml | 2 - .../count_total_create_mr_web_ide.yml | 2 - ...it_after_push_link_or_create_mr_banner.yml | 2 - .../license/20210201124932_recorded_at.yml | 2 - .../metrics/license/20210201124933_uuid.yml | 2 - .../license/20210204124827_hostname.yml | 2 - .../20210204124829_active_user_count.yml | 2 - ...0210204124938_recording_ce_finished_at.yml | 2 - .../license/20210216175601_version.yml | 2 - .../20210216175602_installation_type.yml | 2 - .../license/20210216183237_version.yml | 2 - ...30228110448_installation_creation_date.yml | 2 - .../20230314161014_gitlab_dedicated.yml | 2 - ...stallation_creation_date_approximation.yml | 2 - ...40327160214_gitlab_environment_toolkit.yml | 2 - .../20210201124935_database_adapter.yml | 2 - .../20210204124904_gravatar_enabled.yml | 2 - .../settings/20210204124906_ldap_enabled.yml | 2 - .../20210204124910_omniauth_enabled.yml | 2 - .../20210204124918_signup_enabled.yml | 2 - .../settings/20210216174829_smtp_server.yml | 2 - .../settings/20210216175604_edition.yml | 2 - ...6175606_ldap_encrypted_secrets_enabled.yml | 2 - .../settings/20210216175609_version.yml | 2 - .../settings/20210216180836_enabled.yml | 2 - .../settings/20210216180838_enabled.yml | 2 - .../settings/20210216180840_direct_upload.yml | 2 - .../20210216180841_background_upload.yml | 2 - .../settings/20210216180843_provider.yml | 2 - .../settings/20210216180845_enabled.yml | 2 - .../settings/20210216180847_enabled.yml | 2 - .../settings/20210216180849_direct_upload.yml | 2 - .../20210216180851_background_upload.yml | 2 - .../settings/20210216180852_provider.yml | 2 - .../settings/20210216180854_enabled.yml | 2 - .../settings/20210216180856_enabled.yml | 2 - .../settings/20210216180858_direct_upload.yml | 2 - .../20210216180900_background_upload.yml | 2 - .../settings/20210216180902_provider.yml | 2 - .../settings/20210216180903_enabled.yml | 2 - .../settings/20210216180905_enabled.yml | 2 - .../settings/20210216180907_direct_upload.yml | 2 - .../20210216180909_background_upload.yml | 2 - .../settings/20210216180911_provider.yml | 2 - .../settings/20210216180913_enabled.yml | 2 - .../settings/20210216180915_enabled.yml | 2 - .../settings/20210216180916_direct_upload.yml | 2 - .../20210216180918_background_upload.yml | 2 - .../settings/20210216180920_provider.yml | 2 - .../settings/20210216183248_pg_system_id.yml | 2 - .../20210225045628_operating_system.yml | 2 - .../settings/20210323120839_topology.yml | 2 - ...210702140138_collected_data_categories.yml | 2 - ...2202137_smtp_encrypted_secrets_enabled.yml | 2 - ...15152326_service_ping_features_enabled.yml | 2 - .../20211124061450_snowplow_enabled.yml | 2 - ...onfigured_to_gitlab_collector_hostname.yml | 2 - .../settings/20211201012652_flavor.yml | 2 - ...52126_deactivate_dormant_users_enabled.yml | 2 - ...161233_deactivate_dormant_users_period.yml | 2 - ...coming_email_encrypted_secrets_enabled.yml | 2 - ...e_desk_email_encrypted_secrets_enabled.yml | 2 - ...203164341_index_inconsistencies_metric.yml | 2 - .../metrics/settings/20230328165533_mode.yml | 2 - ...12132238_schema_inconsistencies_metric.yml | 2 - ..._for_ci_daily_build_group_report_result.rb | 12 + db/schema_migrations/20240603080216 | 1 + db/structure.sql | 2 +- .../configure_duo_features.md | 6 + .../self_hosted_models/index.md | 6 +- .../install_infrastructure.md | 6 + doc/api/code_suggestions.md | 1 + doc/integration/jira/configure.md | 3 +- doc/integration/jira/troubleshooting.md | 22 +- doc/security/rate_limits.md | 49 ++ doc/user/group/moderate_users.md | 54 +- .../container_protection_rules.md | 73 ++ doc/user/project/integrations/webhooks.md | 22 +- doc/user/todos.md | 2 + lib/api/users.rb | 53 ++ lib/gitlab/application_rate_limiter.rb | 7 + lib/gitlab/background_migration/.rubocop.yml | 2 +- ..._agent_activity_events_agent_project_id.rb | 2 - ...l_boards_epic_user_preferences_group_id.rb | 2 - ...design_management_versions_namespace_id.rb | 2 - .../backfill_dora_daily_metrics_project_id.rb | 2 - ..._on_merge_requests_with_corrected_regex.rb | 2 +- ...te_development_agent_configs_project_id.rb | 2 - .../backfill_wiki_page_slugs_project_id.rb | 2 - .../purge_stale_security_scans.rb | 2 +- .../re_expire_o_auth_tokens.rb | 2 +- .../backfill_project_pipeline_status_ttl.rb | 2 +- lib/gitlab/ci/ansi2html.rb | 664 ++++++++++-------- lib/gitlab/internal_events.rb | 28 +- lib/gitlab/tracking/event_definition.rb | 6 +- lib/gitlab/usage/event_selection_rule.rb | 98 +++ lib/gitlab/usage/metric_definition.rb | 10 +- .../metrics/instrumentations/base_metric.rb | 10 +- .../instrumentations/total_count_metric.rb | 37 +- locale/gitlab.pot | 10 +- ...ass.rb => batched_migration_base_class.rb} | 2 +- scripts/setup/generate-as-if-foss-env.rb | 4 +- spec/controllers/concerns/group_tree_spec.rb | 2 +- .../product_analytics_tracking_spec.rb | 12 +- .../explore/groups_controller_spec.rb | 4 +- ...cy_proxy_for_containers_controller_spec.rb | 8 +- spec/features/explore/groups_list_spec.rb | 77 +- .../dependency_proxy_for_containers_spec.rb | 59 +- .../groups_explore_empty_state_spec.js | 29 +- spec/frontend/ide/init_gitlab_web_ide_spec.js | 2 +- .../gitlab_web_ide/setup_root_element_spec.js | 2 +- .../__snapshots__/history_item_spec.js.snap | 2 +- spec/lib/gitlab/ci/ansi2html_spec.rb | 476 +++++++------ spec/lib/gitlab/internal_events_spec.rb | 88 ++- .../gitlab/usage/event_selection_rule_spec.rb | 168 +++++ .../total_count_metric_spec.rb | 35 +- .../daily_build_group_report_result_spec.rb | 6 +- .../dependency_proxy/group_policy_spec.rb | 26 +- spec/requests/api/users_spec.rb | 115 +++ spec/requests/jwt_controller_spec.rb | 8 + ...b => batched_migration_base_class_spec.rb} | 4 +- .../setup/generate_as_if_foss_env_spec.rb | 23 + spec/support/rspec_order_todo.yml | 1 - 299 files changed, 1656 insertions(+), 1245 deletions(-) rename .rubocop_todo/migration/{background_migration_base_class.yml => batched_migration_base_class.yml} (98%) create mode 100644 config/feature_flags/gitlab_com_derisk/parse_ci_job_timestamps.yml create mode 100644 config/feature_flags/gitlab_com_derisk/rate_limiting_user_endpoints.yml create mode 100644 db/post_migrate/20240603080216_remove_partition_id_default_value_for_ci_daily_build_group_report_result.rb create mode 100644 db/schema_migrations/20240603080216 create mode 100644 doc/user/packages/container_registry/container_protection_rules.md create mode 100644 lib/gitlab/usage/event_selection_rule.rb rename rubocop/cop/migration/{background_migration_base_class.rb => batched_migration_base_class.rb} (95%) create mode 100644 spec/lib/gitlab/usage/event_selection_rule_spec.rb rename spec/rubocop/cop/migration/{background_migration_base_class_spec.rb => batched_migration_base_class_spec.rb} (94%) diff --git a/.rubocop.yml b/.rubocop.yml index 9a99341045c..3e5bdb8ee2b 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1023,7 +1023,7 @@ Performance/ActiveRecordSubtransactionMethods: - 'spec/**/*.rb' - 'ee/spec/**/*.rb' -Migration/BackgroundMigrationBaseClass: +Migration/BatchedMigrationBaseClass: Enabled: false BackgroundMigration/AvoidSilentRescueExceptions: diff --git a/.rubocop_todo/migration/background_migration_base_class.yml b/.rubocop_todo/migration/batched_migration_base_class.yml similarity index 98% rename from .rubocop_todo/migration/background_migration_base_class.yml rename to .rubocop_todo/migration/batched_migration_base_class.yml index 1a0de4e5821..5f3b072c051 100644 --- a/.rubocop_todo/migration/background_migration_base_class.yml +++ b/.rubocop_todo/migration/batched_migration_base_class.yml @@ -1,5 +1,5 @@ --- -Migration/BackgroundMigrationBaseClass: +Migration/BatchedMigrationBaseClass: Exclude: - 'lib/gitlab/background_migration/backfill_draft_status_on_merge_requests.rb' - 'lib/gitlab/background_migration/backfill_integrations_enable_ssl_verification.rb' diff --git a/.rubocop_todo/rspec/before_all_role_assignment.yml b/.rubocop_todo/rspec/before_all_role_assignment.yml index 22672916fcf..7d66d4342cc 100644 --- a/.rubocop_todo/rspec/before_all_role_assignment.yml +++ b/.rubocop_todo/rspec/before_all_role_assignment.yml @@ -793,6 +793,7 @@ RSpec/BeforeAllRoleAssignment: - 'spec/features/dashboard/issues_filter_spec.rb' - 'spec/features/dashboard/todos/todos_spec.rb' - 'spec/features/emails/issues_spec.rb' + - 'spec/features/explore/groups_list_spec.rb' - 'spec/features/global_search_spec.rb' - 'spec/features/groups/board_spec.rb' - 'spec/features/groups/dependency_proxy_for_containers_spec.rb' diff --git a/.rubocop_todo/rspec/feature_category.yml b/.rubocop_todo/rspec/feature_category.yml index 3481b919e7f..6dc36855f62 100644 --- a/.rubocop_todo/rspec/feature_category.yml +++ b/.rubocop_todo/rspec/feature_category.yml @@ -4829,7 +4829,6 @@ RSpec/FeatureCategory: - 'spec/rubocop/cop/migration/add_index_spec.rb' - 'spec/rubocop/cop/migration/add_reference_spec.rb' - 'spec/rubocop/cop/migration/add_timestamps_spec.rb' - - 'spec/rubocop/cop/migration/background_migration_base_class_spec.rb' - 'spec/rubocop/cop/migration/background_migration_missing_active_concern_spec.rb' - 'spec/rubocop/cop/migration/background_migration_record_spec.rb' - 'spec/rubocop/cop/migration/background_migrations_spec.rb' diff --git a/app/assets/javascripts/ci/catalog/components/details/ci_resource_header_skeleton_loader.vue b/app/assets/javascripts/ci/catalog/components/details/ci_resource_header_skeleton_loader.vue index 83ea224d772..8f3510e4487 100644 --- a/app/assets/javascripts/ci/catalog/components/details/ci_resource_header_skeleton_loader.vue +++ b/app/assets/javascripts/ci/catalog/components/details/ci_resource_header_skeleton_loader.vue @@ -5,7 +5,7 @@ export default {};
{{ __('Contains only whitespace changes.') }} diff --git a/app/assets/javascripts/environments/environment_details/pagination.vue b/app/assets/javascripts/environments/environment_details/pagination.vue index 86f21914305..16511731288 100644 --- a/app/assets/javascripts/environments/environment_details/pagination.vue +++ b/app/assets/javascripts/environments/environment_details/pagination.vue @@ -59,7 +59,7 @@ export default { };