本节介绍支持的作业属性列表以及构建通知消息文本的正确语法。支持的作业属性有:
allow_simultaneous
- (布尔值)表示多个作业是否可以同时从与此作业关联的 JT 运行
controller_node
- (字符串)管理隔离执行环境的实例
created
- (日期时间)创建此作业时的时间戳
custom_virtualenv
- (字符串)用于执行作业的自定义虚拟环境
description
- (字符串)此作业的可选描述
diff_mode
- (布尔值)如果启用,标准输出中会显示对主机上任何模板文件进行的文本更改
elapsed
- (十进制)作业运行所经过的时间(以秒为单位)
execution_node
- (字符串)执行作业的节点
failed
- (布尔值)如果作业失败,则为 true
finished
- (日期时间)作业完成执行的日期和时间
force_handlers
- (布尔值)当处理程序被强制运行时,即使在该主机上的作业失败,它们也会在收到通知时运行(请注意,在一些情况下,如不可访问的主机,仍然可以阻止处理程序运行)
forks
- (整数)作业请求的 fork 数量
id
- (整数)此作业的数据库 id
job_explanation
- (字符串)当无法运行和捕获 stdout 时指示作业状态的状态字段
job_slice_count
- (整数)如果作为分片作业的一部分运行,分片的总数(如果为 1,则作业不是分片作业的一部分)
job_slice_number
- (整数)如果作为分片作业的一部分运行,则为所操作的清单分片的 ID(如果不是分片作业的一部分,不使用这个属性)
job_tags
- (字符串)只有具有指定标签的作业才会执行
job_type
- (选择)run、check 或 scan
launch_type
- (选择)manual、relaunch、callback、scheduled、dependency、workflow、sync 或 scm
limit
- (字符串)如果指定,则 playbook 的执行只限于指定的主机
modified
- (日期时间)最后一次修改作业的时间戳。
name
- (字符串)此作业的名称
playbook
- (字符串)执行的 playbook
scm_revision
- (字符串)用于此作业的项目中的 scm 修订(如果可用)
skip_tags
- (字符串)如果指定,则 playbook 执行将跳过此组标签
start_at_task
- (字符串)如果指定,则 playbook 执行从与此名称匹配的任务开始
started
- (日期时间)作业加入启动队列的日期和时间
status
- (选择)new、pending、waiting、running、successful、failed、error、canceled
timeout
- (整数)取消作业前运行的时间(以秒为单位)
type
- (选择)此作业的数据类型
url
- (字符串)此作业的 URL
use_fact_cache
- (布尔值)如果已为作业启用,Tower 将充当 Ansible 事实缓存插件;在 playbook 运行结束后将事实保留到数据库,并缓存事实以供 Ansible 使用
verbosity
- (选择)0 到 5(与 Normal 到 WinRM Debug 级别相对应)
playbook_counts
:play_count
- (整数)已执行的 play 计数
task_count
- (整数)已执行的作业计数
summary_fields
:inventory
id
- (整数)清单的数据库 ID
name
- (字符串)清单的名称
description
- (字符串)清单的可选描述
has_active_failures
- (布尔值)(已弃用)指明此清单中的任何主机是否发生故障的标记
total_hosts
- (已弃用)(整数)此清单中的主机总数。
hosts_with_active_failures
- (已弃用)(整数)此清单中有活跃故障的主机数
total_groups
- (已弃用)(整数)此清单中的组总数
groups_with_active_failures
- (已弃用)(整数)此清单中有活跃故障的主机数
has_inventory_sources
- (已弃用)(布尔值)指明此清单是否具有外部清单源的标记
total_inventory_sources
- (整数)在此清单中配置的外部清单源总数
inventory_sources_with_failures
- (整数)此清单中有故障的外部清单源数量
organization_id
- (id) 包含此清单的机构
kind
- (选择)(空字符串)(代表主机与清单有直接链接)或“ 'smart'
project
id
- (整数)项目的数据库 ID
name
- (字符串)项目名称
description
- (字符串)项目的可选描述
status
- (选择)new、pending、waiting、running、successful、failed、error、canceled、never updated、ok 或 missing 之一
scm_type (choice)
- 其中一个(空字符串)、git、hg、svn、insights
project_update
id
- (整数)项目更新的数据库 ID
name
- (字符串)项目更新的名称
description
- (字符串)项目更新的可选描述
status
- (选择)new、pending、waiting、running、successful、failed、error 或 canceled 之一
failed
- (布尔值)指示项目是否更新失败
job_template
id
- (整数)作业模板的数据库 ID
name
- (字符串)作业模板的名称
description
- (字符串)作业模板的可选描述
unified_job_template
id
- (整数)统一的作业模板的数据库 ID
name
- (字符串)统一的作业模板的名称
description
- (字符串)统一的作业模板的可选描述
unified_job_type
- (选择) 统一的作业类型(job、workflow_job、project_update 等)
instance_group
id
- (整数)实例组的数据库 ID
name
- (字符串)实例组的名称
created_by
id
- (整数)用户的数据库 ID
username
- (字符串)用户名
first_name
- (字符串)名
last_name
- (字符串)姓
labels
count
- (整数)标签数
results
- 代表标签的字典列表(例如 {"id": 5, "name": "database jobs"})
source_workflow_job
id
- (整数)源工作流作业的数据库 ID
name
- (字符串)源工作流作业的名称
description
- (字符串)源工作流作业的可选描述
elapsed
- (十进制)源工作流作业运行所经过的时间(以秒为单位)
failed
- (布尔值)指示源工作流作业是否失败
status
- (选择)new、pending、waiting、running、successful、failed、error、canceled 之一
可在自定义通知消息中使用分组的大括号 {{ }}
来引用有关任务的信息。特定任务属性可以使用点式标记(例如 {{ job.summary_fields.inventory.name }}
)来访问。任何用在大括号前或周围的字符,或纯文本均可添加用于说明,如“#”用于任务 ID,单引号用于表示某些描述符。自定义消息可在整个消息中包括多个变量:
{{ job_friendly_name }} {{ job.id }} ran on {{ job.execution node }} in {{ job.elapsed }} seconds.
除了作业属性外,其他一些变量还可添加到模板中:
approval_node_name
- (字符串)批准节点名称
approval_status
- (选择)approved、denied、或 timed_out 之一
url
- (字符串)发出通知的作业 URL(这适用于启动、成功、失败和批准通知)
workflow_url
- (字符串)指向相关批准节点的 URL。这允许通知的接收者进入相关的工作流作业页面来查看具体情况(例如 This node can be viewed at: {{ workflow_url }}
)。对于与批准相关的通知, url
和 workflow_url
两者相同)。
job_friendly_name
- (字符串)作业的友好名称
job_metadata
- (字符串)以 JSON 字符表示的作业元数据,例如:
{'url': 'https://towerhost/$/jobs/playbook/13',
'traceback': '',
'status': 'running',
'started': '2019-08-07T21:46:38.362630+00:00',
'project': 'Stub project',
'playbook': 'ping.yml',
'name': 'Stub Job Template',
'limit': '',
'inventory': 'Stub Inventory',
'id': 42,
'hosts': {},
'friendly_name': 'Job',
'finished': False,
'credential': 'Stub credential',
'created_by': 'admin'}