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

参数

参数

注释

书签

字符串

从中推断搜索查询的书签

命令

字符串

在主机上执行的命令。 命令模板所必需

并发控制

字典

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

并发级别

整数

一次执行的最大作业数

时间跨度

整数

在给定的秒数内分配任务

自 foreman_remote_execution-11.0.0 起已删除

描述格式

字符串

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

执行超时间隔

整数

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

输入

字典

要使用的输入

作业模板

字符串 / 必需

要执行的作业模板

密码

字符串 / 必需

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

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

随机排序

布尔值

是否随机排序选定的主机

选项

  • false

  • true

重复

字典

计划一个重复作业

cron_line

字符串

作业应以 cron 格式发生的频率

结束时间

字符串

在此时间之后不再执行

最大迭代

整数

最多重复 N 次

目的

字符串

特殊用途的指定

计划

字典

计划作业在稍后的时间开始

开始时间

字符串

计划作业的未来时间

在此之前开始

字符串

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

搜索查询

字符串

用于标识主机的搜索查询

服务器 URL

字符串 / 必需

Foreman 服务器的 URL。

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

ssh

字典

与 ssh 相关的选项

有效用户

字符串

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

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

目标类型

字符串

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

选项

  • "static_query" ← (默认)

  • "dynamic_query"

用户名

字符串 / 必需

访问 Foreman 服务器的用户名。

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

验证证书

布尔值

是否验证 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

返回值

常见的返回值记录在 这里,以下是此模块特有的字段

描述

实体

字典

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

返回: 成功

job_invocations

列表 / elements=字典

作业调用列表

返回: 成功

作者

  • Peter Ondrejka (@pondrejk)