Add diagnostic message for failure during CLI search deploy (#29462)
parent
c76ae7a5c0
commit
4f4132f1a1
|
@ -100,6 +100,14 @@ module Mastodon::CLI
|
||||||
progress.finish
|
progress.finish
|
||||||
|
|
||||||
say("Indexed #{added} records, de-indexed #{removed}", :green, true)
|
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
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
|
@ -33,6 +33,17 @@ describe Mastodon::CLI::Search do
|
||||||
end
|
end
|
||||||
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
|
context 'without options' do
|
||||||
before { stub_search_indexes }
|
before { stub_search_indexes }
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue