Class: EasyCaddy::Commands::Status

Inherits:
Object
  • Object
show all
Defined in:
lib/easy_caddy/commands/status.rb

Instance Method Summary collapse

Instance Method Details

#callObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'lib/easy_caddy/commands/status.rb', line 11

def call
  running = Caddy.running?
  puts "  Caddy service: #{running ? 'running' : 'STOPPED'}"
  puts "  Config:        #{Paths.caddyfile}"
  puts

  registry = Registry.load
  sites    = registry.all

  if sites.empty?
    puts '  No sites registered.'
    return
  end

  dead_msgs = Conflicts.doctor(registry: registry)
    .select { |f| f.severity == 'INFO' }
    .map(&:message)

  sites.each do |s|
    site_dead = dead_msgs.any? { |m| m.start_with?(s.name) }
    label     = !s.enabled ? 'down' : (site_dead ? 'up (app not running)' : 'up')
    puts "  #{s.name.ljust(20)} #{label}"
    puts "    fragment: #{Paths.site_file(s.name)}" if s.enabled
    puts "    source:   #{s.source_path}" if s.source_path
  end
end