Add healthcheck endpoint and task (#230)

This commit is contained in:
Riccardo Graziosi
2023-05-23 17:19:08 +02:00
committed by GitHub
parent fbaed7f44e
commit 1af8687a22
2 changed files with 26 additions and 0 deletions

View File

@@ -56,4 +56,10 @@ Rails.application.routes.draw do
get 'authentication' get 'authentication'
end end
end end
# Healthcheck endpoint
get '/health', to: proc {
Tenant.first # to make sure db works
[200, {}, ['success']]
}
end end

View File

@@ -0,0 +1,20 @@
require 'rake'
require 'net/http'
require 'uri'
task :healthcheck, [:port] do |t, args|
port = args[:port] || 3000
# Make the HTTP request to the health endpoint
uri = URI.parse("http://localhost:#{port}/health")
response = Net::HTTP.get_response(uri)
exit_code = response.is_a?(Net::HTTPSuccess) ? 0 : 1
rescue
exit_code = 1
ensure
puts "Healthcheck returned: #{exit_code.to_s}"
exit(exit_code)
end