catstodon/lib/tasks/assets.rake
Akihiko Odaki f7bf36d8fc Require environment for generate_static_pages (#6420)
It is required for ApplicationController.
2018-02-03 18:41:01 +01:00

22 lines
643 B
Ruby

# frozen_string_literal: true
def render_static_page(action, dest:, **opts)
I18n.with_locale(ENV['DEFAULT_LOCALE'] || I18n.default_locale) do
html = ApplicationController.render(action, opts)
File.write(dest, html)
end
end
namespace :assets do
desc 'Generate static pages'
task generate_static_pages: :environment do
render_static_page 'errors/500', layout: 'error', dest: Rails.root.join('public', 'assets', '500.html')
end
end
if Rake::Task.task_defined?('assets:precompile')
Rake::Task['assets:precompile'].enhance do
Webpacker.manifest.refresh
Rake::Task['assets:generate_static_pages'].invoke
end
end