Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-01-28 18:08:36 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-01-28 18:08:36 +0300
commitfedf978f9aa1909ed7bb3fad767ad120a1c6bd7b (patch)
tree1bd0f0b301ad96feda1910abe34eb89c46cc55cd /app
parentdb24ab2b72dbff24c201410a0561e929ae7e8061 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app')
-rw-r--r--app/controllers/admin/application_settings_controller.rb10
-rw-r--r--app/finders/issuable_finder.rb25
-rw-r--r--app/helpers/application_settings_helper.rb4
-rw-r--r--app/models/application_setting.rb4
-rw-r--r--app/models/clusters/applications/knative.rb2
-rw-r--r--app/models/concerns/issuable.rb9
-rw-r--r--app/models/project_services/prometheus_service.rb2
-rw-r--r--app/models/serverless/domain_cluster.rb2
-rw-r--r--app/workers/all_queues.yml1218
9 files changed, 1081 insertions, 195 deletions
diff --git a/app/controllers/admin/application_settings_controller.rb b/app/controllers/admin/application_settings_controller.rb
index 3047ee02680..20daf6d71b3 100644
--- a/app/controllers/admin/application_settings_controller.rb
+++ b/app/controllers/admin/application_settings_controller.rb
@@ -98,7 +98,7 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController
}
end
- if Gitlab::CurrentSettings.instance_administration_project_id.present?
+ if Gitlab::CurrentSettings.self_monitoring_project_id.present?
return render status: :ok, json: self_monitoring_data
elsif SelfMonitoringProjectCreateWorker.in_progress?(job_id)
@@ -134,7 +134,7 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController
}
end
- if Gitlab::CurrentSettings.instance_administration_project_id.nil?
+ if Gitlab::CurrentSettings.self_monitoring_project_id.nil?
return render status: :ok, json: {
message: _('Self-monitoring project has been successfully deleted')
}
@@ -161,8 +161,8 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController
def self_monitoring_data
{
- project_id: Gitlab::CurrentSettings.instance_administration_project_id,
- project_full_path: Gitlab::CurrentSettings.instance_administration_project&.full_path
+ project_id: Gitlab::CurrentSettings.self_monitoring_project_id,
+ project_full_path: Gitlab::CurrentSettings.self_monitoring_project&.full_path
}
end
@@ -171,7 +171,7 @@ class Admin::ApplicationSettingsController < Admin::ApplicationController
status: :not_implemented,
json: {
message: _('Self-monitoring is not enabled on this GitLab server, contact your administrator.'),
- documentation_url: help_page_path('administration/monitoring/gitlab_instance_administration_project/index')
+ documentation_url: help_page_path('administration/monitoring/gitlab_self_monitoring_project/index')
}
)
end
diff --git a/app/finders/issuable_finder.rb b/app/finders/issuable_finder.rb
index 194d7da1cab..6d5b1ca3bc5 100644
--- a/app/finders/issuable_finder.rb
+++ b/app/finders/issuable_finder.rb
@@ -314,18 +314,21 @@ class IssuableFinder
params[:assignee_username].present?
end
- # rubocop: disable CodeReuse/ActiveRecord
def assignee
- return @assignee if defined?(@assignee)
+ assignees.first
+ end
- @assignee =
+ # rubocop: disable CodeReuse/ActiveRecord
+ def assignees
+ strong_memoize(:assignees) do
if assignee_id?
- User.find_by(id: params[:assignee_id])
+ User.where(id: params[:assignee_id])
elsif assignee_username?
- User.find_by_username(params[:assignee_username])
+ User.where(username: params[:assignee_username])
else
- nil
+ User.none
end
+ end
end
# rubocop: enable CodeReuse/ActiveRecord
@@ -415,7 +418,7 @@ class IssuableFinder
# These are "helper" params that are required inside the NOT to get the right results. They usually come in
# at the top-level params, but if they do come in inside the `:not` params, they should take precedence.
not_helpers = params.slice(*NEGATABLE_PARAMS_HELPER_KEYS).merge(params[:not].slice(*NEGATABLE_PARAMS_HELPER_KEYS))
- not_param = { key => value }.with_indifferent_access.merge(not_helpers)
+ not_param = { key => value }.with_indifferent_access.merge(not_helpers).merge(not_query: true)
items_to_negate = self.class.new(current_user, not_param).execute
@@ -543,6 +546,8 @@ class IssuableFinder
# rubocop: enable CodeReuse/ActiveRecord
def by_assignee(items)
+ return items.assigned_to(assignees) if not_query? && assignees.any?
+
if filter_by_no_assignee?
items.unassigned
elsif filter_by_any_assignee?
@@ -624,7 +629,7 @@ class IssuableFinder
elsif filter_by_any_label?
items.any_label
else
- items.with_label(label_names, params[:sort])
+ items.with_label(label_names, params[:sort], not_query: not_query?)
end
items
@@ -673,4 +678,8 @@ class IssuableFinder
def min_access_level
ProjectFeature.required_minimum_access_level(klass)
end
+
+ def not_query?
+ !!params[:not_query]
+ end
end
diff --git a/app/helpers/application_settings_helper.rb b/app/helpers/application_settings_helper.rb
index 0e14db6ddbf..3d2304ed42b 100644
--- a/app/helpers/application_settings_helper.rb
+++ b/app/helpers/application_settings_helper.rb
@@ -351,10 +351,10 @@ module ApplicationSettingsHelper
status_delete_self_monitoring_project_admin_application_settings_path,
'self_monitoring_project_exists' =>
- Gitlab::CurrentSettings.instance_administration_project.present?.to_s,
+ Gitlab::CurrentSettings.self_monitoring_project.present?.to_s,
'self_monitoring_project_full_path' =>
- Gitlab::CurrentSettings.instance_administration_project&.full_path
+ Gitlab::CurrentSettings.self_monitoring_project&.full_path
}
end
end
diff --git a/app/models/application_setting.rb b/app/models/application_setting.rb
index 0bea5d7b399..ddd43311d9b 100644
--- a/app/models/application_setting.rb
+++ b/app/models/application_setting.rb
@@ -10,7 +10,9 @@ class ApplicationSetting < ApplicationRecord
add_authentication_token_field :health_check_access_token
add_authentication_token_field :static_objects_external_storage_auth_token
- belongs_to :instance_administration_project, class_name: "Project"
+ belongs_to :self_monitoring_project, class_name: "Project", foreign_key: 'instance_administration_project_id'
+ alias_attribute :self_monitoring_project_id, :instance_administration_project_id
+
belongs_to :instance_administrators_group, class_name: "Group"
# Include here so it can override methods from
diff --git a/app/models/clusters/applications/knative.rb b/app/models/clusters/applications/knative.rb
index 387503bee54..2602bb2cf97 100644
--- a/app/models/clusters/applications/knative.rb
+++ b/app/models/clusters/applications/knative.rb
@@ -11,7 +11,7 @@ module Clusters
self.table_name = 'clusters_applications_knative'
- has_one :serverless_domain_cluster, class_name: 'Serverless::DomainCluster', foreign_key: 'clusters_applications_knative_id', inverse_of: :knative
+ has_one :serverless_domain_cluster, class_name: '::Serverless::DomainCluster', foreign_key: 'clusters_applications_knative_id', inverse_of: :knative
include ::Clusters::Concerns::ApplicationCore
include ::Clusters::Concerns::ApplicationStatus
diff --git a/app/models/concerns/issuable.rb b/app/models/concerns/issuable.rb
index fe0fad4b9d5..653dc9c0b47 100644
--- a/app/models/concerns/issuable.rb
+++ b/app/models/concerns/issuable.rb
@@ -108,7 +108,9 @@ module Issuable
where("NOT EXISTS (SELECT TRUE FROM #{to_ability_name}_assignees WHERE #{to_ability_name}_id = #{to_ability_name}s.id)")
end
scope :assigned_to, ->(u) do
- where("EXISTS (SELECT TRUE FROM #{to_ability_name}_assignees WHERE user_id = ? AND #{to_ability_name}_id = #{to_ability_name}s.id)", u.id)
+ assignees_table = Arel::Table.new("#{to_ability_name}_assignees")
+ sql = assignees_table.project('true').where(assignees_table[:user_id].in(u)).where(Arel::Nodes::SqlLiteral.new("#{to_ability_name}_id = #{to_ability_name}s.id"))
+ where("EXISTS (#{sql.to_sql})")
end
# rubocop:enable GitlabSecurity/SqlInjection
@@ -263,8 +265,9 @@ module Issuable
.reorder(Gitlab::Database.nulls_last_order('highest_priority', direction))
end
- def with_label(title, sort = nil)
- if title.is_a?(Array) && title.size > 1
+ def with_label(title, sort = nil, not_query: false)
+ multiple_labels = title.is_a?(Array) && title.size > 1
+ if multiple_labels && !not_query
joins(:labels).where(labels: { title: title }).group(*grouping_columns(sort)).having("COUNT(DISTINCT labels.title) = #{title.size}")
else
joins(:labels).where(labels: { title: title })
diff --git a/app/models/project_services/prometheus_service.rb b/app/models/project_services/prometheus_service.rb
index 3d5967de41e..00b06ae2595 100644
--- a/app/models/project_services/prometheus_service.rb
+++ b/app/models/project_services/prometheus_service.rb
@@ -102,7 +102,7 @@ class PrometheusService < MonitoringService
private
def self_monitoring_project?
- project && project.id == current_settings.instance_administration_project_id
+ project && project.id == current_settings.self_monitoring_project_id
end
def internal_prometheus_url?
diff --git a/app/models/serverless/domain_cluster.rb b/app/models/serverless/domain_cluster.rb
index 44463a56327..9a1acf7e5c3 100644
--- a/app/models/serverless/domain_cluster.rb
+++ b/app/models/serverless/domain_cluster.rb
@@ -15,5 +15,7 @@ module Serverless
format: { with: HEX_REGEXP, message: 'only allows hex characters' }
default_value_for(:uuid, allows_nil: false) { Gitlab::Serverless::Domain.generate_uuid }
+
+ delegate :domain, to: :pages_domain
end
end
diff --git a/app/workers/all_queues.yml b/app/workers/all_queues.yml
index 1e7b5a1cf65..81be0bca33b 100644
--- a/app/workers/all_queues.yml
+++ b/app/workers/all_queues.yml
@@ -3,177 +3,1047 @@
#
# Do not edit it manually!
---
-- auto_devops:auto_devops_disable
-- auto_merge:auto_merge_process
-- chaos:chaos_cpu_spin
-- chaos:chaos_db_spin
-- chaos:chaos_kill
-- chaos:chaos_leak_mem
-- chaos:chaos_sleep
-- container_repository:cleanup_container_repository
-- container_repository:delete_container_repository
-- cronjob:admin_email
-- cronjob:ci_archive_traces_cron
-- cronjob:container_expiration_policy
-- cronjob:expire_build_artifacts
-- cronjob:gitlab_usage_ping
-- cronjob:import_export_project_cleanup
-- cronjob:issue_due_scheduler
-- cronjob:namespaces_prune_aggregation_schedules
-- cronjob:pages_domain_removal_cron
-- cronjob:pages_domain_ssl_renewal_cron
-- cronjob:pages_domain_verification_cron
-- cronjob:personal_access_tokens_expiring
-- cronjob:pipeline_schedule
-- cronjob:prune_old_events
-- cronjob:prune_web_hook_logs
-- cronjob:remove_expired_group_links
-- cronjob:remove_expired_members
-- cronjob:remove_unreferenced_lfs_objects
-- cronjob:repository_archive_cache
-- cronjob:repository_check_dispatch
-- cronjob:requests_profiles
-- cronjob:schedule_migrate_external_diffs
-- cronjob:stuck_ci_jobs
-- cronjob:stuck_import_jobs
-- cronjob:stuck_merge_jobs
-- cronjob:trending_projects
-- deployment:deployments_finished
-- deployment:deployments_success
-- gcp_cluster:cluster_configure
-- gcp_cluster:cluster_install_app
-- gcp_cluster:cluster_patch_app
-- gcp_cluster:cluster_project_configure
-- gcp_cluster:cluster_provision
-- gcp_cluster:cluster_upgrade_app
-- gcp_cluster:cluster_wait_for_app_installation
-- gcp_cluster:cluster_wait_for_ingress_ip_address
-- gcp_cluster:clusters_applications_activate_service
-- gcp_cluster:clusters_applications_deactivate_service
-- gcp_cluster:clusters_applications_uninstall
-- gcp_cluster:clusters_applications_wait_for_uninstall_app
-- gcp_cluster:clusters_cleanup_app
-- gcp_cluster:clusters_cleanup_project_namespace
-- gcp_cluster:clusters_cleanup_service_account
-- gcp_cluster:wait_for_cluster_creation
-- github_importer:github_import_import_diff_note
-- github_importer:github_import_import_issue
-- github_importer:github_import_import_lfs_object
-- github_importer:github_import_import_note
-- github_importer:github_import_import_pull_request
-- github_importer:github_import_refresh_import_jid
-- github_importer:github_import_stage_finish_import
-- github_importer:github_import_stage_import_base_data
-- github_importer:github_import_stage_import_issues_and_diff_notes
-- github_importer:github_import_stage_import_lfs_objects
-- github_importer:github_import_stage_import_notes
-- github_importer:github_import_stage_import_pull_requests
-- github_importer:github_import_stage_import_repository
-- hashed_storage:hashed_storage_migrator
-- hashed_storage:hashed_storage_project_migrate
-- hashed_storage:hashed_storage_project_rollback
-- hashed_storage:hashed_storage_rollbacker
-- mail_scheduler:mail_scheduler_issue_due
-- mail_scheduler:mail_scheduler_notification_service
-- notifications:new_release
-- object_pool:object_pool_create
-- object_pool:object_pool_destroy
-- object_pool:object_pool_join
-- object_pool:object_pool_schedule_join
-- object_storage:object_storage_background_move
-- object_storage:object_storage_migrate_uploads
-- pipeline_background:archive_trace
-- pipeline_background:ci_build_trace_chunk_flush
-- pipeline_cache:expire_job_cache
-- pipeline_cache:expire_pipeline_cache
-- pipeline_creation:create_pipeline
-- pipeline_creation:run_pipeline_schedule
-- pipeline_default:build_coverage
-- pipeline_default:build_trace_sections
-- pipeline_default:pipeline_metrics
-- pipeline_default:pipeline_notification
-- pipeline_hooks:build_hooks
-- pipeline_hooks:pipeline_hooks
-- pipeline_processing:build_finished
-- pipeline_processing:build_queue
-- pipeline_processing:build_success
-- pipeline_processing:ci_build_prepare
-- pipeline_processing:ci_build_schedule
-- pipeline_processing:ci_resource_groups_assign_resource_from_resource_group
-- pipeline_processing:pipeline_process
-- pipeline_processing:pipeline_success
-- pipeline_processing:pipeline_update
-- pipeline_processing:stage_update
-- pipeline_processing:update_head_pipeline_for_merge_request
-- repository_check:repository_check_batch
-- repository_check:repository_check_clear
-- repository_check:repository_check_single_repository
-- todos_destroyer:todos_destroyer_confidential_issue
-- todos_destroyer:todos_destroyer_entity_leave
-- todos_destroyer:todos_destroyer_group_private
-- todos_destroyer:todos_destroyer_private_features
-- todos_destroyer:todos_destroyer_project_private
-- update_namespace_statistics:namespaces_root_statistics
-- update_namespace_statistics:namespaces_schedule_aggregation
-- authorized_projects
-- background_migration
-- chat_notification
-- create_evidence
-- create_gpg_signature
-- create_note_diff_file
-- default
-- delete_diff_files
-- delete_merged_branches
-- delete_stored_files
-- delete_user
-- detect_repository_languages
-- email_receiver
-- emails_on_push
-- error_tracking_issue_link
-- expire_build_instance_artifacts
-- file_hook
-- git_garbage_collect
-- github_import_advance_stage
-- gitlab_shell
-- group_destroy
-- group_export
-- group_import
-- import_issues_csv
-- invalid_gpg_signature_update
-- irker
-- mailers
-- merge
-- merge_request_mergeability_check
-- migrate_external_diffs
-- namespaceless_project_destroy
-- new_issue
-- new_merge_request
-- new_note
-- pages
-- pages_domain_ssl_renewal
-- pages_domain_verification
-- phabricator_import_import_tasks
-- post_receive
-- process_commit
-- project_cache
-- project_daily_statistics
-- project_destroy
-- project_export
-- project_service
-- propagate_service_template
-- reactive_caching
-- rebase
-- remote_mirror_notification
-- repository_cleanup
-- repository_fork
-- repository_import
-- repository_remove_remote
-- repository_update_remote_mirror
-- self_monitoring_project_create
-- self_monitoring_project_delete
-- system_hook_push
-- update_external_pull_requests
-- update_merge_requests
-- update_project_statistics
-- upload_checksum
-- web_hook
+- :name: auto_devops:auto_devops_disable
+ :feature_category: :auto_devops
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: auto_merge:auto_merge_process
+ :feature_category: :continuous_delivery
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 3
+- :name: chaos:chaos_cpu_spin
+ :feature_category: :chaos_engineering
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: chaos:chaos_db_spin
+ :feature_category: :chaos_engineering
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: chaos:chaos_kill
+ :feature_category: :chaos_engineering
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: chaos:chaos_leak_mem
+ :feature_category: :chaos_engineering
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: chaos:chaos_sleep
+ :feature_category: :chaos_engineering
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: container_repository:cleanup_container_repository
+ :feature_category: :container_registry
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: container_repository:delete_container_repository
+ :feature_category: :container_registry
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:admin_email
+ :feature_category: :not_owned
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:ci_archive_traces_cron
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:container_expiration_policy
+ :feature_category: :container_registry
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:expire_build_artifacts
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:gitlab_usage_ping
+ :feature_category: :not_owned
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:import_export_project_cleanup
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:issue_due_scheduler
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:namespaces_prune_aggregation_schedules
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: cronjob:pages_domain_removal_cron
+ :feature_category: :pages
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: cronjob:pages_domain_ssl_renewal_cron
+ :feature_category: :pages
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:pages_domain_verification_cron
+ :feature_category: :pages
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:personal_access_tokens_expiring
+ :feature_category: :authentication_and_authorization
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:pipeline_schedule
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: cronjob:prune_old_events
+ :feature_category: :not_owned
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:prune_web_hook_logs
+ :feature_category: :integrations
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:remove_expired_group_links
+ :feature_category: :authentication_and_authorization
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:remove_expired_members
+ :feature_category: :authentication_and_authorization
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: cronjob:remove_unreferenced_lfs_objects
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:repository_archive_cache
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:repository_check_dispatch
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:requests_profiles
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:schedule_migrate_external_diffs
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:stuck_ci_jobs
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: cronjob:stuck_import_jobs
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: cronjob:stuck_merge_jobs
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: cronjob:trending_projects
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: deployment:deployments_finished
+ :feature_category: :continuous_delivery
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 3
+- :name: deployment:deployments_success
+ :feature_category: :continuous_delivery
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 3
+- :name: gcp_cluster:cluster_configure
+ :feature_category: :kubernetes_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:cluster_install_app
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:cluster_patch_app
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:cluster_project_configure
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:cluster_provision
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:cluster_upgrade_app
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:cluster_wait_for_app_installation
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: gcp_cluster:cluster_wait_for_ingress_ip_address
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:clusters_applications_activate_service
+ :feature_category: :kubernetes_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:clusters_applications_deactivate_service
+ :feature_category: :kubernetes_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:clusters_applications_uninstall
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:clusters_applications_wait_for_uninstall_app
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: gcp_cluster:clusters_cleanup_app
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:clusters_cleanup_project_namespace
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:clusters_cleanup_service_account
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gcp_cluster:wait_for_cluster_creation
+ :feature_category: :kubernetes_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_import_diff_note
+ :feature_category: :importers
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_import_issue
+ :feature_category: :importers
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_import_lfs_object
+ :feature_category: :importers
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_import_note
+ :feature_category: :importers
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_import_pull_request
+ :feature_category: :importers
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_refresh_import_jid
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_stage_finish_import
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_stage_import_base_data
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_stage_import_issues_and_diff_notes
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_stage_import_lfs_objects
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_stage_import_notes
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_stage_import_pull_requests
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_importer:github_import_stage_import_repository
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: hashed_storage:hashed_storage_migrator
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: hashed_storage:hashed_storage_project_migrate
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: hashed_storage:hashed_storage_project_rollback
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: hashed_storage:hashed_storage_rollbacker
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: mail_scheduler:mail_scheduler_issue_due
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: mail_scheduler:mail_scheduler_notification_service
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 2
+- :name: notifications:new_release
+ :feature_category: :release_orchestration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: object_pool:object_pool_create
+ :feature_category: :gitaly
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: object_pool:object_pool_destroy
+ :feature_category: :gitaly
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: object_pool:object_pool_join
+ :feature_category: :gitaly
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: object_pool:object_pool_schedule_join
+ :feature_category: :gitaly
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: object_storage:object_storage_background_move
+ :feature_category: :not_owned
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: object_storage:object_storage_migrate_uploads
+ :feature_category: :not_owned
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: pipeline_background:archive_trace
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: pipeline_background:ci_build_trace_chunk_flush
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: pipeline_cache:expire_job_cache
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 3
+- :name: pipeline_cache:expire_pipeline_cache
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 3
+- :name: pipeline_creation:create_pipeline
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 4
+- :name: pipeline_creation:run_pipeline_schedule
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 4
+- :name: pipeline_default:build_coverage
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 3
+- :name: pipeline_default:build_trace_sections
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 3
+- :name: pipeline_default:pipeline_metrics
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 3
+- :name: pipeline_default:pipeline_notification
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 3
+- :name: pipeline_hooks:build_hooks
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: pipeline_hooks:pipeline_hooks
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 2
+- :name: pipeline_processing:build_finished
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 5
+- :name: pipeline_processing:build_queue
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 5
+- :name: pipeline_processing:build_success
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 5
+- :name: pipeline_processing:ci_build_prepare
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 5
+- :name: pipeline_processing:ci_build_schedule
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 5
+- :name: pipeline_processing:ci_resource_groups_assign_resource_from_resource_group
+ :feature_category: :continuous_delivery
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 5
+- :name: pipeline_processing:pipeline_process
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 5
+- :name: pipeline_processing:pipeline_success
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 5
+- :name: pipeline_processing:pipeline_update
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 5
+- :name: pipeline_processing:stage_update
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 5
+- :name: pipeline_processing:update_head_pipeline_for_merge_request
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 5
+- :name: repository_check:repository_check_batch
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: repository_check:repository_check_clear
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: repository_check:repository_check_single_repository
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: todos_destroyer:todos_destroyer_confidential_issue
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: todos_destroyer:todos_destroyer_entity_leave
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: todos_destroyer:todos_destroyer_group_private
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: todos_destroyer:todos_destroyer_private_features
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: todos_destroyer:todos_destroyer_project_private
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: update_namespace_statistics:namespaces_root_statistics
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: update_namespace_statistics:namespaces_schedule_aggregation
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: authorized_projects
+ :feature_category: :authentication_and_authorization
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: background_migration
+ :feature_category: :not_owned
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: chat_notification
+ :feature_category: :chatops
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: create_evidence
+ :feature_category: :release_governance
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: create_gpg_signature
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: create_note_diff_file
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: default
+ :feature_category:
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary:
+ :weight: 1
+- :name: delete_diff_files
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: delete_merged_branches
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: delete_stored_files
+ :feature_category: :not_owned
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: delete_user
+ :feature_category: :authentication_and_authorization
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: detect_repository_languages
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: email_receiver
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: emails_on_push
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 2
+- :name: error_tracking_issue_link
+ :feature_category: :error_tracking
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: expire_build_instance_artifacts
+ :feature_category: :continuous_integration
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: file_hook
+ :feature_category: :integrations
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: git_garbage_collect
+ :feature_category: :gitaly
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: github_import_advance_stage
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: gitlab_shell
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: group_destroy
+ :feature_category: :subgroups
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: group_export
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: group_import
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: import_issues_csv
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :cpu
+ :weight: 2
+- :name: invalid_gpg_signature_update
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: irker
+ :feature_category: :integrations
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: mailers
+ :feature_category:
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary:
+ :weight: 2
+- :name: merge
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 5
+- :name: merge_request_mergeability_check
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: migrate_external_diffs
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: namespaceless_project_destroy
+ :feature_category: :authentication_and_authorization
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: new_issue
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 2
+- :name: new_merge_request
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 2
+- :name: new_note
+ :feature_category: :issue_tracking
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 2
+- :name: pages
+ :feature_category: :pages
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: pages_domain_ssl_renewal
+ :feature_category: :pages
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: pages_domain_verification
+ :feature_category: :pages
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: phabricator_import_import_tasks
+ :feature_category: :importers
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: post_receive
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 5
+- :name: process_commit
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 3
+- :name: project_cache
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: project_daily_statistics
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: project_destroy
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: project_export
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :memory
+ :weight: 1
+- :name: project_service
+ :feature_category: :integrations
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: propagate_service_template
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: reactive_caching
+ :feature_category: :not_owned
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 1
+- :name: rebase
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: remote_mirror_notification
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: repository_cleanup
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: repository_fork
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: repository_import
+ :feature_category: :importers
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: repository_remove_remote
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: repository_update_remote_mirror
+ :feature_category: :source_code_management
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: self_monitoring_project_create
+ :feature_category: :metrics
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: self_monitoring_project_delete
+ :feature_category: :metrics
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 2
+- :name: system_hook_push
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: update_external_pull_requests
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 3
+- :name: update_merge_requests
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive: true
+ :resource_boundary: :cpu
+ :weight: 3
+- :name: update_project_statistics
+ :feature_category: :source_code_management
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: upload_checksum
+ :feature_category: :geo_replication
+ :has_external_dependencies:
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1
+- :name: web_hook
+ :feature_category: :integrations
+ :has_external_dependencies: true
+ :latency_sensitive:
+ :resource_boundary: :unknown
+ :weight: 1