Я пишу Ruby приложение, которое использует MongoDB с Mongoid для устойчивости. У меня есть тесты модулей и интеграций, которые я запускаю с Rake, и docker -композитный файл, который обрабатывает инициализацию MongoDB.
Есть ли способ, как я могу сказать Rake, чтобы он ожидал mon go проверки здоровья перед запускать тесты?
docker -compose.yml:
version: '3.0'
services:
mongo:
image: mongo:latest
ports:
- "27017:27017"
environment:
- MONGO_INITDB_DATABASE=humanenergy
healthcheck:
test: "mongo --eval 'db.stats().ok'"
interval: 10s
timeout: 5s
retries: 10
Rakefile
task :default => :test
task :test do
Dir.glob('./test/human_energy_bot/*_test.rb').each { |file| require file }
Dir.glob('./test/human_energy_bot/model/*_test.rb').each { |file| require file }
end