theforeman.foreman.job_invocation 模块 – 调用远程执行作业

注意

此模块是 theforeman.foreman 集合 (版本 4.2.0) 的一部分。

如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install theforeman.foreman。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在 playbook 中使用它,请指定:theforeman.foreman.job_invocation

theforeman.foreman 1.4.0 中的新增功能

概要

  • 调用和调度远程执行作业

要求

以下要求是在执行此模块的主机上需要的。

  • requests

参数

参数

注释

bookmark

字符串

从中推断搜索查询的书签

command

字符串

要在主机上执行的命令。对于命令模板是必需的

concurrency_control

字典

控制并发级别和随时间的分布

concurrency_level

整数

一次最多执行的作业数

time_span

整数

在给定的秒数内分配任务

自 foreman_remote_execution-11.0.0 起已移除

description_format

字符串

仅覆盖此调用的模板中的描述格式

execution_timeout_interval

整数

仅覆盖此调用的模板中的超时间隔

inputs

字典

要使用的输入

job_template

字符串 / 必需

要执行的作业模板

password

字符串 / 必需

访问 Foreman 服务器的用户的密码。

如果任务中未指定该值,则将使用环境变量 FOREMAN_PASSWORD 的值。

randomized_ordering

布尔值

是否随机排序选定的主机

选项

  • false

  • true

recurrence

字典

调度重复作业

cron_line

字符串

作业应以 cron 格式出现的频率

end_time

字符串

在此时间后不再执行

max_iteration

整数

最多重复 N 次

purpose

字符串

特殊用途的指定

scheduling

字典

安排作业在稍后时间启动

start_at

字符串

安排作业在未来某个时间启动

start_before

字符串

指示如果操作无法在此时间之前启动,则应取消该操作。

search_query

字符串

用于识别主机的搜索查询

server_url

字符串 / 必需

Foreman 服务器的 URL。

如果任务中未指定该值,则将使用环境变量 FOREMAN_SERVER_URL 的值。

ssh

字典

ssh 相关选项

effective_user

字符串

应使用哪个用户运行脚本(使用类似 sudo 的机制)

默认为模板参数或全局设置

targeting_type

字符串

动态查询在执行前更新搜索结果(对于计划作业很有用)

选项

  • "static_query" ← (默认)

  • "dynamic_query"

username

字符串 / 必需

访问 Foreman 服务器的用户名。

如果任务中未指定该值,则将使用环境变量 FOREMAN_USERNAME 的值。

validate_certs

布尔值

是否验证 Foreman 服务器的 TLS 证书。

如果任务中未指定该值,则将使用环境变量 FOREMAN_VALIDATE_CERTS 的值。

选项

  • false

  • true ← (默认)

属性

属性

支持

描述

check_mode

支持:完全支持

可以在 check_mode 下运行并返回更改状态预测,而无需修改实体

diff_mode

支持:完全支持

在 diff 模式下,将返回有关已更改内容(或在 check_mode 下可能需要更改的内容)的详细信息

示例

- name: "Run remote command on a single host once"
  theforeman.foreman.job_invocation:
    search_query: "name ^ (foreman.example.com)"
    command: 'ls'
    job_template: "Run Command - SSH Default"
    ssh:
      effective_user: "tester"

- name: "Run ansible command on active hosts once a day"
  theforeman.foreman.job_invocation:
    bookmark: 'active'
    command: 'pwd'
    job_template: "Run Command - Ansible Default"
    recurrence:
      cron_line: "30 2 * * *"
    concurrency_control:
      concurrency_level: 2

返回值

常见返回值已记录在 此处,以下是此模块独有的字段

描述

entity

字典

按其类型分组的受影响实体的最终状态。

返回:成功

job_invocations

列表 / 元素=字典

作业调用的列表

返回:成功

作者

  • Peter Ondrejka (@pondrejk)