main
1# frozen_string_literal: true
2
3namespace :doc do
4 Bundler.require(:doc)
5
6 def default_options
7 {
8 config: Rails.root.join("config", "jekyll.yml").to_s,
9 source: Rails.root.join('doc').to_s,
10 destination: Rails.root.join('public', 'doc').to_s
11 }
12 end
13
14 desc 'Clean the API documentation'
15 task :clean do
16 rm_rf Rails.root.join('public', 'doc')
17 end
18
19 desc "Build static pages"
20 task build: [:clean, :environment] do
21 Jekyll::Site.new(Jekyll.configuration(default_options)).process
22 end
23
24 desc "Watch and rebuild static pages"
25 task watch: [:clean, :environment] do
26 custom_options = default_options.merge(watch: true)
27 Jekyll::Commands::Build.process(custom_options)
28 end
29end