Add diagnostic message for failure during CLI search deploy (#29462)
parent
c76ae7a5c0
commit
4f4132f1a1
|
@ -100,6 +100,14 @@ module Mastodon::CLI
|
|||
progress.finish
|
||||
|
||||
say("Indexed #{added} records, de-indexed #{removed}", :green, true)
|
||||
rescue Elasticsearch::Transport::Transport::ServerError => e
|
||||
fail_with_message <<~ERROR
|
||||
There was an issue connecting to the search server. Make sure the
|
||||
server is configured and running correctly, and that the environment
|
||||
variable settings match what the server is expecting.
|
||||
|
||||
#{e.message}
|
||||
ERROR
|
||||
end
|
||||
|
||||
private
|
||||
|
|
|
@ -33,6 +33,17 @@ describe Mastodon::CLI::Search do
|
|||
end
|
||||
end
|
||||
|
||||
context 'when server communication raises an error' do
|
||||
let(:options) { { reset_chewy: true } }
|
||||
|
||||
before { allow(Chewy::Stash::Specification).to receive(:reset!).and_raise(Elasticsearch::Transport::Transport::Errors::InternalServerError) }
|
||||
|
||||
it 'Exits with error message' do
|
||||
expect { subject }
|
||||
.to raise_error(Thor::Error, /issue connecting to the search/)
|
||||
end
|
||||
end
|
||||
|
||||
context 'without options' do
|
||||
before { stub_search_indexes }
|
||||
|
||||
|
|
Loading…
Reference in New Issue