Fix dashboard warning about Elasticsearch index mismatch not showing up (#34567)

Co-authored-by: Claire <claire.github-309c@sitedethib.com>
This commit is contained in:
Eugen Rochko 2025-04-28 15:59:49 +02:00 committed by GitHub
parent 17d8e2b6e3
commit 715cbee93d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 5 additions and 2 deletions

View File

@ -16,7 +16,7 @@ class Admin::SystemCheck::ElasticsearchCheck < Admin::SystemCheck::BaseCheck
def pass?
return true unless Chewy.enabled?
running_version.present? && compatible_version? && cluster_health['status'] == 'green' && indexes_match? && preset_matches?
running_version.present? && compatible_version? && cluster_health['status'] == 'green' && indexes_match? && specifications_match? && preset_matches?
rescue Faraday::ConnectionFailed, Elasticsearch::Transport::Transport::Error
false
end
@ -40,7 +40,7 @@ class Admin::SystemCheck::ElasticsearchCheck < Admin::SystemCheck::BaseCheck
)
elsif !specifications_match?
Admin::SystemCheck::Message.new(
:elasticsearch_analysis_mismatch,
:elasticsearch_analysis_index_mismatch,
mismatched_specifications_indexes.join(' ')
)
elsif cluster_health['status'] == 'red'

View File

@ -29,6 +29,9 @@ RSpec.describe Admin::SystemCheck::ElasticsearchCheck do
},
},
})
[AccountsIndex, StatusesIndex, PublicStatusesIndex, InstancesIndex, TagsIndex].each do |index|
allow(index).to receive(:specification).and_return(instance_double(Chewy::Index::Specification, changed?: false))
end
end
context 'when running version is present and high enough' do