Class: Inertia::SSR::Server
- Inherits:
-
Rage::Daemon
- Object
- Rage::Daemon
- Inertia::SSR::Server
- Defined in:
- lib/inertia/ssr/server.rb
Overview
Background daemon that runs the Node.js SSR server.
Instance Method Summary collapse
Instance Method Details
#cleanup ⇒ Object
23 24 25 26 |
# File 'lib/inertia/ssr/server.rb', line 23 def cleanup Process.kill("TERM", @pid) if @pid rescue Errno::ESRCH end |
#perform ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/inertia/ssr/server.rb', line 9 def perform puts "INFO: Starting SSR server" ssr_bundle = Frontend.ssr_dist.glob("*.{js,mjs}").first unless ssr_bundle&.exist? Rage.logger.fatal("Could not start SSR server - bundle not found") return Rage::Daemon::Stop end @pid = Process.spawn("#{Frontend.runtime} #{ssr_bundle.relative_path_from(Frontend.root)}", chdir: Frontend.root) Process.wait(@pid) end |