cron - Ansible 在每次应用时添加 crontask
问题描述
我已将以下行添加到 cron 以在重新启动时运行脚本
@reboot /usr/local/bin/autostart.sh
但是当我为它准备 ansible 脚本时,我发现每次应用 ansible 时它都会增加 1 行。
任务如下:
- name: Add autostart script to cron
cron:
special_time: reboot
user: user
state: present
job: /usr/local/bin/autostart.sh
经过几次更新后,我得到了以下 cron:
#Ansible: None
@reboot /usr/local/bin/autostart.sh
#Ansible: None
@reboot /usr/local/bin/autostart.sh
#Ansible: None
@reboot /usr/local/bin/autostart.sh
#Ansible: None
@reboot /usr/local/bin/autostart.sh
对我来说,这是一种奇怪的行为,因为state: present
应该检查记录是否已经存在。
或者也许我错过了什么?
解决方案
添加名称参数。例如
- name: Add autostart script to cron
cron:
name: "autostart"
special_time: reboot
user: user
state: present
job: /usr/local/bin/autostart.sh
引用cron
name:crontab 条目的描述,或者,如果设置了 env,则为环境变量的名称。如果 state=absent 则为必需。请注意,如果 name 未设置且 state=present,则将始终创建一个新的 crontab 条目,而不管现有的条目。在未来的版本中将始终需要此参数。
推荐阅读
- java - 如何获取所有别名形式 ImmutableOpenMap
> - javascript - 在比较两个 JavaScript 数组和值时面临问题
- php - HTML 自定义表格
- c# - PublishSingleFile 不生成单个可执行文件
- django - 使用 Django Rest Framework 和 ReactJS 下载生成的 CSV 文件
- amazon-s3 - AWS Kinesis firehose:如何将时间戳从 UTC 更改为新加坡?
- textures - 如何从 vtk 中提取纹理以用于搅拌机?
- oracle - Oracle 执行计划中的 TABLE ACCESS FULL
- javascript - NodeJS:使用管道从可读流写入文件会导致堆内存错误
- azure-powershell - 当我转换为大写时 azure-powershell 命令未按预期工作