From acc3d48da4fa0dcd2f2c8500c7cb7cc5c957300f Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 12 Oct 2023 06:11:31 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .../style/percent_literal_delimiters.yml | 72 ------- .../cycle_analytics/components/base.vue | 4 + .../components/value_stream_filters.vue | 124 ++++++++++-- .../cycle_analytics/store/actions.js | 4 + .../cycle_analytics/store/mutation_types.js | 1 + .../cycle_analytics/store/mutations.js | 3 + .../analytics/cycle_analytics/store/state.js | 1 + .../components/date_ranges_dropdown.vue | 131 ++++++++++++ .../analytics/shared/components/daterange.vue | 23 +-- .../javascripts/analytics/shared/constants.js | 69 ++++++- .../snippets/components/snippet_title.vue | 31 ++- .../projects/cycle_analytics_controller.rb | 1 + app/finders/snippets_finder.rb | 14 +- .../queries/snippet/snippet.query.graphql | 1 + app/graphql/types/snippet_type.rb | 5 + app/models/concerns/ci/deployable.rb | 31 ++- app/models/snippet.rb | 12 ++ app/policies/personal_snippet_policy.rb | 9 + app/policies/project_snippet_policy.rb | 8 + app/views/shared/snippets/_snippet.html.haml | 3 + .../hide_snippets_of_banned_users.yml | 8 + .../vsa_predefined_date_ranges.yml | 8 + .../counts_28d/20210216183701_jira.yml | 1 + .../metrics/counts_28d/20210216183707_csv.yml | 1 + .../counts_all/20210216180654_jira.yml | 1 + .../metrics/counts_all/20210216180700_csv.yml | 1 + ...230707151359_create_ci_finished_builds.sql | 4 +- ...gn_key_for_ci_stages_pipeline_id_bigint.rb | 15 ++ db/schema_migrations/20230928104015 | 1 + db/structure.sql | 2 +- doc/administration/moderate_users.md | 3 +- doc/api/graphql/reference/index.md | 1 + .../group/value_stream_analytics/index.md | 12 +- .../lib/click_house/client/formatter.rb | 3 +- .../spec/click_house/client/formatter_spec.rb | 13 +- .../middleware/handle_malformed_strings.rb | 2 +- .../count_csv_imports_metric.rb | 15 ++ .../count_jira_imports_metric.rb | 15 ++ lib/gitlab/usage_data.rb | 10 - locale/gitlab.pot | 6 + spec/features/cycle_analytics_spec.rb | 98 ++++++--- spec/finders/snippets_finder_spec.rb | 48 ++++- .../cycle_analytics/components/base_spec.js | 2 + .../components/value_stream_filters_spec.js | 190 +++++++++++++++++- .../analytics/cycle_analytics/mock_data.js | 2 + .../cycle_analytics/store/actions_spec.js | 3 + .../cycle_analytics/store/mutations_spec.js | 2 + .../components/date_ranges_dropdown_spec.js | 165 +++++++++++++++ .../snippets/components/snippet_title_spec.js | 37 +++- spec/frontend/snippets/test_utils.js | 1 + .../update_alert_status_spec.rb | 2 +- .../mutations/ci/runner/update_spec.rb | 2 +- spec/graphql/mutations/commits/create_spec.rb | 2 +- .../resolvers/board_lists_resolver_spec.rb | 2 +- ...container_repository_tags_resolver_spec.rb | 8 +- .../projects/jira_projects_resolver_spec.rb | 12 +- .../resolvers/projects_resolver_spec.rb | 6 +- .../boards/board_issue_input_type_spec.rb | 4 +- .../design_collection_copy_state_enum_spec.rb | 2 +- spec/graphql/types/issue_type_spec.rb | 6 +- spec/graphql/types/snippet_type_spec.rb | 2 +- spec/helpers/appearances_helper_spec.rb | 12 +- .../application_settings_helper_spec.rb | 10 +- spec/helpers/auth_helper_spec.rb | 16 +- spec/helpers/breadcrumbs_helper_spec.rb | 8 +- spec/helpers/ci/pipelines_helper_spec.rb | 2 +- spec/helpers/clusters_helper_spec.rb | 10 +- spec/helpers/diff_helper_spec.rb | 12 +- spec/helpers/emails_helper_spec.rb | 6 +- ...ables_description_templates_helper_spec.rb | 6 +- spec/helpers/issues_helper_spec.rb | 2 +- spec/helpers/nav_helper_spec.rb | 4 +- spec/helpers/page_layout_helper_spec.rb | 6 +- spec/helpers/profiles_helper_spec.rb | 6 +- spec/helpers/releases_helper_spec.rb | 12 +- spec/helpers/tracking_helper_spec.rb | 2 +- .../direct_upload_support_spec.rb | 2 +- .../enumerator_next_patch_spec.rb | 6 +- .../initializers/rack_multipart_patch_spec.rb | 4 +- .../lib/api/ci/helpers/runner_helpers_spec.rb | 2 +- spec/lib/api/entities/user_spec.rb | 2 +- spec/lib/api/helpers/common_helpers_spec.rb | 2 +- spec/lib/backup/files_spec.rb | 10 +- spec/lib/backup/manager_spec.rb | 8 +- spec/lib/backup/repositories_spec.rb | 4 +- .../banzai/filter/asset_proxy_filter_spec.rb | 10 +- .../lib/banzai/filter/autolink_filter_spec.rb | 2 +- ...adcast_message_sanitization_filter_spec.rb | 10 +- .../banzai/filter/image_link_filter_spec.rb | 4 +- .../references/alert_reference_filter_spec.rb | 6 +- .../commit_range_reference_filter_spec.rb | 4 +- .../commit_reference_filter_spec.rb | 6 +- .../design_reference_filter_spec.rb | 2 +- .../external_issue_reference_filter_spec.rb | 4 +- .../feature_flag_reference_filter_spec.rb | 6 +- .../references/issue_reference_filter_spec.rb | 16 +- .../references/label_reference_filter_spec.rb | 28 +-- .../merge_request_reference_filter_spec.rb | 6 +- .../milestone_reference_filter_spec.rb | 24 +-- .../project_reference_filter_spec.rb | 2 +- .../snippet_reference_filter_spec.rb | 6 +- .../references/user_reference_filter_spec.rb | 2 +- .../filter/syntax_highlight_filter_spec.rb | 6 +- spec/lib/banzai/filter_array_spec.rb | 16 +- .../pipeline/description_pipeline_spec.rb | 4 +- .../lib/banzai/pipeline/full_pipeline_spec.rb | 2 +- spec/lib/banzai/pipeline/gfm_pipeline_spec.rb | 2 +- .../pipeline/plain_markdown_pipeline_spec.rb | 2 +- .../reference_parser/base_parser_spec.rb | 2 +- .../reference_parser/issue_parser_spec.rb | 2 +- .../merge_request_parser_spec.rb | 2 +- spec/lib/bitbucket/collection_spec.rb | 2 +- .../lib/bitbucket/representation/repo_spec.rb | 2 +- .../common/pipelines/boards_pipeline_spec.rb | 4 +- .../prohibited_attributes_transformer_spec.rb | 2 +- .../handle_malformed_strings_spec.rb | 33 +++ .../count_csv_imports_metric_spec.rb | 32 +++ .../count_jira_imports_metric_spec.rb | 32 +++ spec/lib/gitlab/usage_data_spec.rb | 10 - spec/models/snippet_spec.rb | 54 +++++ spec/policies/personal_snippet_policy_spec.rb | 51 +++++ spec/policies/project_snippet_policy_spec.rb | 56 +++++- .../snippets/_snippet.html.haml_spec.rb | 33 +++ 123 files changed, 1506 insertions(+), 400 deletions(-) create mode 100644 app/assets/javascripts/analytics/shared/components/date_ranges_dropdown.vue create mode 100644 config/feature_flags/development/hide_snippets_of_banned_users.yml create mode 100644 config/feature_flags/development/vsa_predefined_date_ranges.yml create mode 100644 db/post_migrate/20230928104015_sync_foreign_key_for_ci_stages_pipeline_id_bigint.rb create mode 100644 db/schema_migrations/20230928104015 create mode 100644 lib/gitlab/usage/metrics/instrumentations/count_csv_imports_metric.rb create mode 100644 lib/gitlab/usage/metrics/instrumentations/count_jira_imports_metric.rb create mode 100644 spec/frontend/analytics/shared/components/date_ranges_dropdown_spec.js create mode 100644 spec/lib/gitlab/usage/metrics/instrumentations/count_csv_imports_metric_spec.rb create mode 100644 spec/lib/gitlab/usage/metrics/instrumentations/count_jira_imports_metric_spec.rb diff --git a/.rubocop_todo/style/percent_literal_delimiters.yml b/.rubocop_todo/style/percent_literal_delimiters.yml index 5b5fca8cc77..5dc4cf6e056 100644 --- a/.rubocop_todo/style/percent_literal_delimiters.yml +++ b/.rubocop_todo/style/percent_literal_delimiters.yml @@ -3,70 +3,6 @@ Style/PercentLiteralDelimiters: Exclude: - 'metrics_server/metrics_server.rb' - - 'spec/graphql/mutations/alert_management/update_alert_status_spec.rb' - - 'spec/graphql/mutations/ci/runner/update_spec.rb' - - 'spec/graphql/mutations/commits/create_spec.rb' - - 'spec/graphql/resolvers/board_lists_resolver_spec.rb' - - 'spec/graphql/resolvers/container_repository_tags_resolver_spec.rb' - - 'spec/graphql/resolvers/projects/jira_projects_resolver_spec.rb' - - 'spec/graphql/resolvers/projects_resolver_spec.rb' - - 'spec/graphql/types/boards/board_issue_input_type_spec.rb' - - 'spec/graphql/types/design_management/design_collection_copy_state_enum_spec.rb' - - 'spec/graphql/types/issue_type_spec.rb' - - 'spec/helpers/appearances_helper_spec.rb' - - 'spec/helpers/application_settings_helper_spec.rb' - - 'spec/helpers/auth_helper_spec.rb' - - 'spec/helpers/breadcrumbs_helper_spec.rb' - - 'spec/helpers/ci/pipelines_helper_spec.rb' - - 'spec/helpers/clusters_helper_spec.rb' - - 'spec/helpers/diff_helper_spec.rb' - - 'spec/helpers/emails_helper_spec.rb' - - 'spec/helpers/issuables_description_templates_helper_spec.rb' - - 'spec/helpers/issues_helper_spec.rb' - - 'spec/helpers/nav_helper_spec.rb' - - 'spec/helpers/page_layout_helper_spec.rb' - - 'spec/helpers/profiles_helper_spec.rb' - - 'spec/helpers/releases_helper_spec.rb' - - 'spec/helpers/tracking_helper_spec.rb' - - 'spec/initializers/direct_upload_support_spec.rb' - - 'spec/initializers/enumerator_next_patch_spec.rb' - - 'spec/initializers/rack_multipart_patch_spec.rb' - - 'spec/lib/api/ci/helpers/runner_helpers_spec.rb' - - 'spec/lib/api/entities/user_spec.rb' - - 'spec/lib/api/helpers/common_helpers_spec.rb' - - 'spec/lib/backup/files_spec.rb' - - 'spec/lib/backup/manager_spec.rb' - - 'spec/lib/backup/repositories_spec.rb' - - 'spec/lib/banzai/filter/asset_proxy_filter_spec.rb' - - 'spec/lib/banzai/filter/autolink_filter_spec.rb' - - 'spec/lib/banzai/filter/broadcast_message_sanitization_filter_spec.rb' - - 'spec/lib/banzai/filter/image_link_filter_spec.rb' - - 'spec/lib/banzai/filter/references/alert_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/commit_range_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/commit_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/design_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/external_issue_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/feature_flag_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/issue_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/label_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/merge_request_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/milestone_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/project_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/snippet_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/references/user_reference_filter_spec.rb' - - 'spec/lib/banzai/filter/syntax_highlight_filter_spec.rb' - - 'spec/lib/banzai/filter_array_spec.rb' - - 'spec/lib/banzai/pipeline/description_pipeline_spec.rb' - - 'spec/lib/banzai/pipeline/full_pipeline_spec.rb' - - 'spec/lib/banzai/pipeline/gfm_pipeline_spec.rb' - - 'spec/lib/banzai/pipeline/plain_markdown_pipeline_spec.rb' - - 'spec/lib/banzai/reference_parser/base_parser_spec.rb' - - 'spec/lib/banzai/reference_parser/issue_parser_spec.rb' - - 'spec/lib/banzai/reference_parser/merge_request_parser_spec.rb' - - 'spec/lib/bitbucket/collection_spec.rb' - - 'spec/lib/bitbucket/representation/repo_spec.rb' - - 'spec/lib/bulk_imports/common/pipelines/boards_pipeline_spec.rb' - - 'spec/lib/bulk_imports/common/transformers/prohibited_attributes_transformer_spec.rb' - 'spec/lib/gitlab/alert_management/payload/base_spec.rb' - 'spec/lib/gitlab/asset_proxy_spec.rb' - 'spec/lib/gitlab/auth/ldap/auth_hash_spec.rb' @@ -186,7 +122,6 @@ Style/PercentLiteralDelimiters: - 'spec/lib/gitlab/popen_spec.rb' - 'spec/lib/gitlab/process_management_spec.rb' - 'spec/lib/gitlab/process_supervisor_spec.rb' - - 'spec/lib/gitlab/prometheus/query_variables_spec.rb' - 'spec/lib/gitlab/quick_actions/extractor_spec.rb' - 'spec/lib/gitlab/reference_extractor_spec.rb' - 'spec/lib/gitlab/repository_cache_adapter_spec.rb' @@ -261,7 +196,6 @@ Style/PercentLiteralDelimiters: - 'spec/models/diff_viewer/base_spec.rb' - 'spec/models/environment_spec.rb' - 'spec/models/group_label_spec.rb' - - 'spec/models/group_spec.rb' - 'spec/models/instance_configuration_spec.rb' - 'spec/models/integration_spec.rb' - 'spec/models/integrations/buildkite_spec.rb' @@ -279,7 +213,6 @@ Style/PercentLiteralDelimiters: - 'spec/models/project_feature_spec.rb' - 'spec/models/project_label_spec.rb' - 'spec/models/project_spec.rb' - - 'spec/models/project_team_spec.rb' - 'spec/models/projects/topic_spec.rb' - 'spec/models/prometheus_metric_spec.rb' - 'spec/models/releases/link_spec.rb' @@ -320,13 +253,11 @@ Style/PercentLiteralDelimiters: - 'spec/requests/api/graphql/project/terraform/state_spec.rb' - 'spec/requests/api/graphql/project/terraform/states_spec.rb' - 'spec/requests/api/internal/base_spec.rb' - - 'spec/requests/api/invitations_spec.rb' - 'spec/requests/api/issues/get_group_issues_spec.rb' - 'spec/requests/api/issues/get_project_issues_spec.rb' - 'spec/requests/api/issues/issues_spec.rb' - 'spec/requests/api/issues/post_projects_issues_spec.rb' - 'spec/requests/api/issues/put_projects_issues_spec.rb' - - 'spec/requests/api/members_spec.rb' - 'spec/requests/api/merge_requests_spec.rb' - 'spec/requests/api/metadata_spec.rb' - 'spec/requests/api/project_container_repositories_spec.rb' @@ -377,8 +308,6 @@ Style/PercentLiteralDelimiters: - 'spec/services/issues/export_csv_service_spec.rb' - 'spec/services/jira/requests/projects/list_service_spec.rb' - 'spec/services/lfs/file_transformer_spec.rb' - - 'spec/services/members/create_service_spec.rb' - - 'spec/services/members/invite_service_spec.rb' - 'spec/services/merge_requests/conflicts/resolve_service_spec.rb' - 'spec/services/merge_requests/merge_service_spec.rb' - 'spec/services/merge_requests/pushed_branches_service_spec.rb' @@ -422,7 +351,6 @@ Style/PercentLiteralDelimiters: - 'spec/support/shared_examples/metrics/transaction_metrics_with_labels_shared_examples.rb' - 'spec/support/shared_examples/models/application_setting_shared_examples.rb' - 'spec/support/shared_examples/models/diff_positionable_note_shared_examples.rb' - - 'spec/support/shared_examples/models/member_shared_examples.rb' - 'spec/support/shared_examples/models/project_ci_cd_settings_shared_examples.rb' - 'spec/support/shared_examples/models/wiki_shared_examples.rb' - 'spec/support/shared_examples/path_extraction_shared_examples.rb' diff --git a/app/assets/javascripts/analytics/cycle_analytics/components/base.vue b/app/assets/javascripts/analytics/cycle_analytics/components/base.vue index 84ee8f41b11..39fbc217278 100644 --- a/app/assets/javascripts/analytics/cycle_analytics/components/base.vue +++ b/app/assets/javascripts/analytics/cycle_analytics/components/base.vue @@ -56,6 +56,7 @@ export default { 'hasNoAccessError', 'groupPath', 'namespace', + 'predefinedDateRange', ]), ...mapGetters(['pathNavigationData', 'filterParams']), isLoaded() { @@ -132,6 +133,7 @@ export default { 'fetchStageData', 'setSelectedStage', 'setDateRange', + 'setPredefinedDateRange', 'updateStageTablePagination', ]), onSetDateRange({ startDate, endDate }) { @@ -170,7 +172,9 @@ export default { :start-date="createdAfter" :end-date="createdBefore" :group-path="groupPath" + :predefined-date-range="predefinedDateRange" @setDateRange="onSetDateRange" + @setPredefinedDateRange="setPredefinedDateRange" />