所有
我有一个shell脚本,它创建日志的tar文件。我把食谱中的食谱嵌入了食谱中。
配方如下:
cookbook_file "/var/create-tar.sh" do
source "create-tar.sh"
mode 0755
end
execute "create tar files of logs older than 1 day" do
command "sh /var/create-tar.sh"
end
执行资源正在执行配方。我想通过在cronjob中输入一个条目来在cron中安排这个shell脚本。
crontab条目应为:
*/2 * * * * sh -x /var/test.sh > /var/log/backup 2>&1
如何在食谱中添加此条目?
答案 0 :(得分:13)
Chef包含一个用于设置Cron作业的资源 - 它被称为cron。
cron 'test' do
minute '*/2'
command 'sh -x /var/test.sh > /var/log/backup 2>&1'
end
但你的最终目标是什么?记录轮换?
有一个工具,名为logrotate,还有一个厨师食谱:logrotate。
这为您提供了一个资源,允许您指定要旋转的日志以及选项:
logrotate_app 'test' do
path '/var/log/test/*.log'
frequency 'daily'
rotate 30
end
以防你想要实现这样的事情; - )