cronジョブレールが実行されるたびにrakeタスクを使用してpdfを生成したい.コンソールでこのコマンドでこのrakeタスクを実行すると、pdfが正常に生成されます
bundle exec rake auto_invoice_email
私がこのコマンドを与えると
which wkhtmltopdf
次に、このパス「/usr/bin/wkhtmltopdf」があります
しかし、cronジョブで実行すると、このエラーが発生します
rake aborted!
Failed to execute:
"/usr/bin/wkhtmltopdf" -q - -
Error: PDF could not be generated!
Tasks: TOP => auto_invoice_email
(See full trace by running task with --trace)
cron ジョブの wkhtmltopdf のパスを指定する方法と場所
何か助けはありますか?
ここにレーキタスクがあります
require 'rubygems'
require 'wicked_pdf'
require 'erb'
require 'date'
task :auto_invoice_email => :environment do
#$PATH = '/usr/bin/wkhtmltopdf'
include ApplicationHelper
users = User.find_subscribers
unless users.blank?
users.each do |user|
@user = user
content = File.read "#{Rails.root}/app/views/accountings/generate_invoice_pdf_rake.html.erb"
template = ERB.new(content)
html_content = template.result(binding)
pdf= WickedPdf.new.pdf_from_string(html_content, :wkhtmltopdf => '/usr/bin/wkhtmltopdf')
name = "#{Rails.root}/public/#{user.subscriber.downcase+" "+Time.now.to_s}.pdf"
File.open(name, 'wb') do |file|
file << pdf
end
end
end
終わり
ありがとう