From 3597fb6d337baab5847863feedc98b433fb4000c Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Wed, 16 Jun 2021 18:10:35 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .../Pipeline Configuration.md | 38 +++ .rubocop_manual_todo.yml | 1 - .../content_editor/components/top_toolbar.vue | 9 + .../content_editor/extensions/strike.js | 9 + .../services/create_content_editor.js | 2 + .../components/issuable_item.vue | 13 +- .../components/issuable_list_root.vue | 32 +- .../components/issue_card_time_info.vue | 7 +- .../components/issues_list_app.vue | 132 ++++----- .../javascripts/issues_list/constants.js | 5 +- app/assets/javascripts/issues_list/index.js | 13 +- .../queries/get_issues.query.graphql | 45 +++ .../queries/issue.fragment.graphql | 51 ++++ app/assets/javascripts/jira_connect/index.js | 2 + .../javascripts/performance_bar/index.js | 2 + .../components/runner_manual_setup_help.vue | 42 ++- .../runner_registration_token_reset.vue | 83 ++++++ ..._registration_token_reset.mutation.graphql | 6 + .../runner/runner_list/runner_list_app.vue | 7 +- app/assets/javascripts/sentry/index.js | 2 + .../security_report_download_dropdown.vue | 2 +- app/assets/javascripts/webpack.js | 3 + app/helpers/issues_helper.rb | 1 - app/models/ability.rb | 67 ++++- .../cycle_analytics/project_level.rb | 1 + app/models/ci/pipeline.rb | 2 +- app/models/container_expiration_policy.rb | 10 + app/models/integration.rb | 1 + app/models/project.rb | 6 +- app/models/user.rb | 15 +- app/policies/base_policy.rb | 2 +- app/policies/concerns/policy_actor.rb | 2 +- app/policies/global_policy.rb | 2 +- app/services/users/update_service.rb | 1 + app/views/admin/runners/show.html.haml | 14 +- .../_gcp_signup_offer_banner.html.haml | 16 +- .../container_expiration_policy_worker.rb | 8 + app/workers/web_hook_worker.rb | 2 +- .../load_balancing_for_web_hook_worker.yml | 8 - .../active_record_keyset_pagination.rb | 4 +- config/initializers/declarative_policy.rb | 2 + config/webpack.config.js | 9 + doc/api/graphql/reference/index.md | 6 +- doc/ci/runners/README.md | 2 +- .../database/database_reviewer_guidelines.md | 2 +- doc/development/database/keyset_pagination.md | 251 ++++++++++++++++ .../database/pagination_guidelines.md | 21 +- doc/development/query_performance.md | 4 +- .../understanding_explain_plans.md | 155 ++++++---- doc/development/usage_ping/index.md | 31 +- doc/user/group/epics/epic_boards.md | 12 +- doc/user/packages/container_registry/index.md | 4 + .../merge_requests/approvals/settings.md | 2 +- lib/api/members.rb | 2 + lib/gitlab/auth.rb | 2 +- lib/gitlab/auth/current_user_mode.rb | 34 ++- lib/gitlab/auth/user_access_denied_reason.rb | 4 + .../ci/templates/Security/DAST.gitlab-ci.yml | 19 +- lib/gitlab/database/migrations/observers.rb | 3 +- .../migrations/observers/query_details.rb | 41 +++ lib/gitlab/exclusive_lease.rb | 27 ++ lib/gitlab/lfs_token.rb | 2 +- lib/gitlab/pagination/keyset/paginator.rb | 9 +- lib/gitlab/safe_request_store.rb | 15 + lib/sidebars/projects/menus/ci_cd_menu.rb | 4 + locale/gitlab.pot | 6 + .../non_devops/performance_bar_spec.rb | 2 +- .../protected_branches_controller_spec.rb | 6 +- spec/factories/integrations.rb | 6 +- spec/factories/projects.rb | 2 +- spec/features/projects/active_tabs_spec.rb | 51 ++++ .../components/top_toolbar_spec.js | 1 + spec/frontend/fixtures/api_markdown.yml | 4 +- spec/frontend/fixtures/releases.rb | 3 + .../components/issuable_list_root_spec.js | 134 ++++++--- .../components/issue_card_time_info_spec.js | 10 +- .../components/issues_list_app_spec.js | 280 ++++++++---------- spec/frontend/issues_list/mock_data.js | 67 +++++ .../runner_manual_setup_help_spec.js | 39 ++- .../runner_registration_token_reset_spec.js | 155 ++++++++++ spec/helpers/issues_helper_spec.rb | 1 - .../external_issue_reference_filter_spec.rb | 4 +- .../lib/gitlab/ci/templates/templates_spec.rb | 9 +- .../observers/query_details_spec.rb | 58 ++++ spec/lib/gitlab/exclusive_lease_spec.rb | 78 +++++ spec/lib/gitlab/git_access_spec.rb | 24 +- spec/lib/gitlab/import_export/all_models.yml | 6 +- .../pagination/keyset/paginator_spec.rb | 23 ++ .../projects/menus/external_wiki_menu_spec.rb | 2 +- spec/models/ability_spec.rb | 41 +++ spec/models/ci/pipeline_spec.rb | 24 +- .../container_expiration_policy_spec.rb | 16 +- .../integrations/emails_on_push_spec.rb | 8 +- spec/models/project_spec.rb | 6 +- spec/models/user_spec.rb | 64 ++++ spec/policies/base_policy_spec.rb | 30 +- spec/policies/global_policy_spec.rb | 24 ++ spec/requests/api/graphql/group_query_spec.rb | 2 +- .../merge_requests/set_assignees_spec.rb | 12 +- .../api/import_bitbucket_server_spec.rb | 2 +- spec/requests/api/protected_branches_spec.rb | 4 +- spec/requests/api/services_spec.rb | 4 +- spec/requests/git_http_spec.rb | 62 ++-- spec/serializers/service_event_entity_spec.rb | 8 +- spec/serializers/service_field_entity_spec.rb | 7 +- .../protected_branches/create_service_spec.rb | 2 +- .../destroy_service_spec.rb | 2 +- .../protected_branches/update_service_spec.rb | 2 +- .../repositories/changelog_service_spec.rb | 2 +- spec/spec_helper.rb | 9 + .../nav/sidebar/_project.html.haml_spec.rb | 2 +- ...container_expiration_policy_worker_spec.rb | 14 + spec/workers/web_hook_worker_spec.rb | 1 - 113 files changed, 2105 insertions(+), 545 deletions(-) create mode 100644 .gitlab/merge_request_templates/Pipeline Configuration.md create mode 100644 app/assets/javascripts/content_editor/extensions/strike.js create mode 100644 app/assets/javascripts/issues_list/queries/get_issues.query.graphql create mode 100644 app/assets/javascripts/issues_list/queries/issue.fragment.graphql create mode 100644 app/assets/javascripts/runner/components/runner_registration_token_reset.vue create mode 100644 app/assets/javascripts/runner/graphql/runners_registration_token_reset.mutation.graphql delete mode 100644 config/feature_flags/development/load_balancing_for_web_hook_worker.yml create mode 100644 doc/development/database/keyset_pagination.md create mode 100644 lib/gitlab/database/migrations/observers/query_details.rb create mode 100644 spec/frontend/runner/components/runner_registration_token_reset_spec.js create mode 100644 spec/lib/gitlab/database/migrations/observers/query_details_spec.rb diff --git a/.gitlab/merge_request_templates/Pipeline Configuration.md b/.gitlab/merge_request_templates/Pipeline Configuration.md new file mode 100644 index 00000000000..920abf086cb --- /dev/null +++ b/.gitlab/merge_request_templates/Pipeline Configuration.md @@ -0,0 +1,38 @@ + + + +## What does this MR do? + + + +## Related issues + + + +## Check-list + +### Pre-merge + +Consider the effect of the changes in this merge request on the following: + +- [ ] Different [pipeline types](https://docs.gitlab.com/ee/development/pipelines.html#pipelines-for-merge-requests) +- Non-canonical projects: + - [ ] `gitlab-foss` + - [ ] `security` + - [ ] `dev` + - [ ] personal forks +- [ ] [Pipeline performance](https://about.gitlab.com/handbook/engineering/quality/performance-indicators/#average-merge-request-pipeline-duration-for-gitlab) + +**If new jobs are added:** + +- [ ] Change-related rules (e.g. frontend/backend/database file changes): _____ +- [ ] Frequency they are running (MRs, main branch, nightly, bi-hourly): _____ +- [ ] Add a duration chart to https://app.periscopedata.com/app/gitlab/652085/Engineering-Productivity---Pipeline-Build-Durations if there are new jobs added to merge request pipelines + +This will help keep track of expected cost increases to the [GitLab project average pipeline cost per merge request](https://about.gitlab.com/handbook/engineering/quality/performance-indicators/#gitlab-project-average-pipeline-cost-per-merge-request) RPI + +### Post-merge + +- [ ] Consider communicating these changes to the broader team following the [communication guideline for pipeline changes](https://about.gitlab.com/handbook/engineering/quality/engineering-productivity-team/#pipeline-changes) + +/label ~tooling ~"tooling::pipelines" ~"Engineering Productivity" diff --git a/.rubocop_manual_todo.yml b/.rubocop_manual_todo.yml index dcd6dcf4062..dae8084b656 100644 --- a/.rubocop_manual_todo.yml +++ b/.rubocop_manual_todo.yml @@ -13,7 +13,6 @@ # WIP See https://gitlab.com/gitlab-org/gitlab/-/issues/322903 Graphql/Descriptions: Exclude: - - 'ee/app/graphql/ee/types/list_limit_metric_enum.rb' - 'ee/app/graphql/types/epic_state_enum.rb' - 'ee/app/graphql/types/health_status_enum.rb' - 'ee/app/graphql/types/iteration_state_enum.rb' diff --git a/app/assets/javascripts/content_editor/components/top_toolbar.vue b/app/assets/javascripts/content_editor/components/top_toolbar.vue index 07fdd3147e2..d3363ce092b 100644 --- a/app/assets/javascripts/content_editor/components/top_toolbar.vue +++ b/app/assets/javascripts/content_editor/components/top_toolbar.vue @@ -63,6 +63,15 @@ export default { :tiptap-editor="contentEditor.tiptapEditor" @execute="trackToolbarControlExecution" /> + label.id)); + return JSON.stringify(this.labels.map((label) => getIdFromGraphQLId(label.id))); }, assignees() { - return this.issuable.assignees || []; + return this.issuable.assignees?.nodes || this.issuable.assignees || []; }, createdAt() { return sprintf(__('created %{timeAgo}'), { @@ -157,7 +160,7 @@ export default { diff --git a/app/assets/javascripts/runner/components/runner_registration_token_reset.vue b/app/assets/javascripts/runner/components/runner_registration_token_reset.vue new file mode 100644 index 00000000000..b03574264d9 --- /dev/null +++ b/app/assets/javascripts/runner/components/runner_registration_token_reset.vue @@ -0,0 +1,83 @@ + + diff --git a/app/assets/javascripts/runner/graphql/runners_registration_token_reset.mutation.graphql b/app/assets/javascripts/runner/graphql/runners_registration_token_reset.mutation.graphql new file mode 100644 index 00000000000..9c2797732ad --- /dev/null +++ b/app/assets/javascripts/runner/graphql/runners_registration_token_reset.mutation.graphql @@ -0,0 +1,6 @@ +mutation runnersRegistrationTokenReset($input: RunnersRegistrationTokenResetInput!) { + runnersRegistrationTokenReset(input: $input) { + token + errors + } +} diff --git a/app/assets/javascripts/runner/runner_list/runner_list_app.vue b/app/assets/javascripts/runner/runner_list/runner_list_app.vue index b4eacb911a2..7f3a980ccca 100644 --- a/app/assets/javascripts/runner/runner_list/runner_list_app.vue +++ b/app/assets/javascripts/runner/runner_list/runner_list_app.vue @@ -7,6 +7,7 @@ import RunnerList from '../components/runner_list.vue'; import RunnerManualSetupHelp from '../components/runner_manual_setup_help.vue'; import RunnerPagination from '../components/runner_pagination.vue'; import RunnerTypeHelp from '../components/runner_type_help.vue'; +import { INSTANCE_TYPE } from '../constants'; import getRunnersQuery from '../graphql/get_runners.query.graphql'; import { fromUrlQueryToSearch, @@ -97,6 +98,7 @@ export default { }); }, }, + INSTANCE_TYPE, };