Our implementation for simple Item search (T383132) currently relies on WikibaseCirrusSearch which uses ElasticSearch. This makes e2e/integration testing difficult because ElasticSearch is unavailable in our regular CI system at the moment.
Options:
- Cirrus Search extensions runs its integration tests, which might be close to, or not, to our end to end tests using a dedicated test runner, that is then automated and integrated with the Jenkins CI through a browser test bot. This is likely a "historical" approach, which might not be preferred, and it is unclear to me how much of Cirrus Search runner and bot could be reused, and feasible using this approach would be for Wikibase (Search API) CI
- Enable Quibble to run Elastic Search. This would like follow a way how it was made possible for Quibble to run Apache server using supervisord. Depending how much resources (memory) would it consume and how fast starting would take, using Elastic through Quibble on Jenkins CI might be acceptable. I figure that might be the most "right" way of addressing the need, and should start with "prototyping" adding Elastic to Quibble containers, and observing how it behaves.
Let's start with trying out approach 2, and if that turns out not to be feasible, we'll go with the workaround in option 1.