diff --git a/app/models/application_setting.rb b/app/models/application_setting.rb index 70a1eb0bc2a03d8cdd7209fb24f7547beca1f494..4c7dc2a326e1c51f840dbeedea971e9a7cc3f894 100644 --- a/app/models/application_setting.rb +++ b/app/models/application_setting.rb @@ -708,8 +708,9 @@ def self.kroki_formats_attributes validates :sign_in_restrictions, json_schema: { filename: 'application_setting_sign_in_restrictions' } jsonb_accessor :search, + global_search_issues_enabled: [:boolean, { default: true }], global_search_merge_requests_enabled: [:boolean, { default: true }], - global_search_work_items_enabled: [:boolean, { default: true }], + global_search_snippet_titles_enabled: [:boolean, { default: true }], global_search_users_enabled: [:boolean, { default: true }] validates :search, json_schema: { filename: 'application_setting_search' } diff --git a/app/validators/json_schemas/application_setting_search.json b/app/validators/json_schemas/application_setting_search.json index 6f8ee71ab8692793855fca62e4848943cbb65c6a..8663ece45a1836b6417def90f7979fb382b1bf8b 100644 --- a/app/validators/json_schemas/application_setting_search.json +++ b/app/validators/json_schemas/application_setting_search.json @@ -4,14 +4,18 @@ "type": "object", "additionalProperties": true, "properties": { - "global_search_work_items_enabled": { + "global_search_issues_enabled": { "type": "boolean", - "description": "Enable global search for work items" + "description": "Enable global search for issues" }, "global_search_merge_requests_enabled": { "type": "boolean", "description": "Enable global search for merge requests" }, + "global_search_snippet_titles_enabled": { + "type": "boolean", + "description": "Enable global search for snippets" + }, "global_search_users_enabled": { "type": "boolean", "description": "Enable global search for users" diff --git a/ee/app/models/ee/application_setting.rb b/ee/app/models/ee/application_setting.rb index a86a8cf425e4761fd3a3b0862b2b65ee097a5fdc..9dad85fd29fd1dcc8e29b74e5920cfe01083576c 100644 --- a/ee/app/models/ee/application_setting.rb +++ b/ee/app/models/ee/application_setting.rb @@ -26,8 +26,8 @@ module ApplicationSetting jsonb_accessor :search, global_search_code_enabled: [:boolean, { default: true }], global_search_commits_enabled: [:boolean, { default: true }], - global_search_wiki_enabled: [:boolean, { default: true }], - global_search_snippet_titles_enabled: [:boolean, { default: true }] + global_search_epics_enabled: [:boolean, { default: true }], + global_search_wiki_enabled: [:boolean, { default: true }] jsonb_accessor :zoekt_settings, zoekt_auto_delete_lost_nodes: [:boolean, { default: true }], @@ -68,12 +68,10 @@ module ApplicationSetting elasticsearch_indexed_file_size_limit_kb: [:integer, { default: 1024 }], elasticsearch_max_code_indexing_concurrency: [:integer, { default: 30 }] - validates :duo_workflow, json_schema: { filename: "application_setting_duo_workflow" } - validates :clickhouse, json_schema: { filename: "application_setting_clickhouse" } - + validates :search, json_schema: { filename: 'application_setting_search' } + validates :duo_workflow, json_schema: { filename: "application_setting_duo_workflow" } validates :integrations, json_schema: { filename: "application_setting_integrations" } - validates :elasticsearch, json_schema: { filename: "application_setting_elasticsearch" } jsonb_accessor :cluster_agents, @@ -282,7 +280,6 @@ module ApplicationSetting allow_nil: false, inclusion: { in: [true, false], message: N_('must be a boolean value') } - validates :search, json_schema: { filename: 'application_setting_search' } validates :zoekt_settings, json_schema: { filename: 'application_setting_zoekt_settings' } validates :zoekt_cpu_to_tasks_ratio, numericality: { greater_than: 0.0 } diff --git a/ee/app/validators/json_schemas/application_setting_search.json b/ee/app/validators/json_schemas/application_setting_search.json index dee8fc265ff5acc1b6a7ccec4f03e8114182193c..67aab82d24b84ac35c91d7430f5552160d6fbb2e 100644 --- a/ee/app/validators/json_schemas/application_setting_search.json +++ b/ee/app/validators/json_schemas/application_setting_search.json @@ -12,25 +12,29 @@ "type": "boolean", "description": "Enable global search for commits" }, - "global_search_merge_requests_enabled": { + "global_search_epics_enabled": { "type": "boolean", - "description": "Enable global search for merge requests" + "description": "Enable global search for epics" }, - "global_search_work_items_enabled": { + "global_search_issues_enabled": { "type": "boolean", - "description": "Enable global search for work items" + "description": "Enable global search for issues" }, - "global_search_wiki_enabled": { + "global_search_merge_requests_enabled": { "type": "boolean", - "description": "Enable global search for wikis" + "description": "Enable global search for merge requests" + }, + "global_search_snippet_titles_enabled": { + "type": "boolean", + "description": "Enable global search for snippets" }, "global_search_users_enabled": { "type": "boolean", "description": "Enable global search for users" }, - "global_search_snippet_titles_enabled": { + "global_search_wiki_enabled": { "type": "boolean", - "description": "Enable global search for snippets" + "description": "Enable global search for wikis" } } } diff --git a/ee/spec/models/application_setting_spec.rb b/ee/spec/models/application_setting_spec.rb index eaf021d734049010a2cff060ddbf075d876d3c4f..f9d1901062808cee79603adb6690f3d971d184a5 100644 --- a/ee/spec/models/application_setting_spec.rb +++ b/ee/spec/models/application_setting_spec.rb @@ -48,11 +48,12 @@ it { expect(setting.fetch_observability_alerts_from_cloud).to eq(true) } it { expect(setting.global_search_code_enabled).to be(true) } it { expect(setting.global_search_commits_enabled).to be(true) } + it { expect(setting.global_search_epics_enabled).to be(true) } + it { expect(setting.global_search_issues_enabled).to be(true) } it { expect(setting.global_search_merge_requests_enabled).to be(true) } - it { expect(setting.global_search_work_items_enabled).to be(true) } - it { expect(setting.global_search_wiki_enabled).to be(true) } - it { expect(setting.global_search_users_enabled).to be(true) } it { expect(setting.global_search_snippet_titles_enabled).to be(true) } + it { expect(setting.global_search_users_enabled).to be(true) } + it { expect(setting.global_search_wiki_enabled).to be(true) } end describe 'validations' do diff --git a/spec/models/application_setting_spec.rb b/spec/models/application_setting_spec.rb index cde19ba6a9f79f9d17bd3b48b286495f59c813fb..6ee1966345c00aa651f9ca4d3805c254e239648c 100644 --- a/spec/models/application_setting_spec.rb +++ b/spec/models/application_setting_spec.rb @@ -53,8 +53,9 @@ it { expect(setting.resource_access_token_notify_inherited).to be(false) } it { expect(setting.lock_resource_access_token_notify_inherited).to be(false) } it { expect(setting.ropc_without_client_credentials).to be(true) } + it { expect(setting.global_search_issues_enabled).to be(true) } it { expect(setting.global_search_merge_requests_enabled).to be(true) } - it { expect(setting.global_search_work_items_enabled).to be(true) } + it { expect(setting.global_search_snippet_titles_enabled).to be(true) } it { expect(setting.global_search_users_enabled).to be(true) } end