wait_for_init.rake 389 B

12345678910111213141516171819
  1. # frozen_string_literal: true
  2. require 'English'
  3. namespace :db do
  4. desc 'Waits for database to be available'
  5. task :wait_for_init do
  6. require 'socket'
  7. 20.times do
  8. sock = TCPSocket.new ENV['POSTGRES_HOST'], ENV['POSTGRES_PORT'].to_i
  9. sock.close
  10. break
  11. rescue StandardError
  12. $stderr.puts "db:wait_for_init: #{$ERROR_INFO}"
  13. sleep 6
  14. end
  15. end
  16. end