manala.cron
#######################################################################################################
:exclamation: 弃用通知 :exclamation:
本仓库及相关角色已弃用,建议使用 Manala Ansible Collection
您可以在 集合仓库 中找到使用信息
#######################################################################################################
Ansible角色:Cron 
:exclamation: 在 主要Ansible角色仓库 中 报告问题 和 发送拉取请求 :exclamation:
该角色将处理 Cron 的设置。
它是 Manala Ansible堆栈 的一部分,但也可以作为独立组件使用。
需求
无。
依赖
无。
安装
Ansible 2+
使用 ansible galaxy 命令行:
ansible-galaxy install manala.cron
使用 ansible galaxy 需求文件:
- src: manala.cron
角色处理器
名称 | 类型 | 描述 |
---|---|---|
`cron restart | 服务 | 重启cron服务 |
角色变量
名称 | 默认值 | 类型 | 描述 |
---|---|---|---|
manala_cron_install_packages |
~ | 数组 | 要安装的依赖包 |
manala_cron_install_packages_default |
['cron'] | 数组 | 默认要安装的依赖包 |
manala_cron_files_exclusive |
false | 布尔 | 文件独占性 |
manala_cron_files_dir |
'/etc/cron.d' | 字符串 | 文件目录路径 |
manala_cron_files_defaults |
{} | 数组 | 默认cron文件参数 |
manala_cron_files |
[] | 数组 | cron文件集合 |
配置示例
manala_cron_files_defaults:
user: foo # 覆盖默认的 "root" 用户
manala_cron_files:
- file: app
user: foo # 默认作业用户
env:
FOO: foo
jobs:
# ⚠️ 在这个示例中,您必须**明确**将分钟选项设置为`0`,以便在特定小时运行作业,
# 否则,默认值`*`将每分钟运行一次。
- command: php /srv/app/bin/console app:foo:bar
minute: 0
hour: 7
- command: php /srv/app/bin/console app:foo:bar
user: bar # 覆盖默认作业用户
minute: 0
hour: 7
# 弃用
- name: foo-bar
job: php /srv/app/bin/console app:foo:bar
minute: 0
hour: 7
# 基于模板
- file: template
template: my/cron.j2
# 基于原始内容
- file: content
config: |
0 7 * * * root cd /srv/app && bin/console app:bar:bar
# 确保文件不存在
- file: absent
state: absent # 默认是 "present"
# 忽略文件
- file: ignore
state: ignore
# 展平文件
- "{{ my_custom_files_array }}"
示例剧本
- hosts: servers
roles:
- role: manala.cron
许可证
MIT
作者信息
Manala (http://www.manala.io/)