17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
# File 'lib/site_maps/cli.rb', line 17
def generate(processes = "")
load_rails if rails_app?
opts = (@options || {}).transform_keys(&:to_sym)
if (logfile = opts[:logfile])
SiteMaps.logger = Logger.new(logfile)
end
if opts[:debug]
SiteMaps.logger.level = Logger::DEBUG
end
SiteMaps::Notification.subscribe(SiteMaps::Runner::EventListener)
context = (opts[:context] || {}).transform_keys(&:to_sym)
runner = SiteMaps.generate(
config_file: opts[:config_file],
max_threads: opts[:max_threads],
context: context.empty? ? nil : context,
ping: opts[:ping] || nil
)
if processes.empty?
runner.enqueue_all
else
kwargs = context
processes.split(",").each do |process|
runner.enqueue(process.strip.to_sym, **kwargs)
end
end
if opts[:enqueue_remaining]
runner.enqueue_remaining
end
runner.run
end
|