community.general.openwrt_init 模块 – 管理 OpenWrt 上的服务

注意

此模块是 community.general 集合 (版本 10.1.0) 的一部分。

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

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

要在剧本中使用它,请指定: community.general.openwrt_init

概要

  • 控制远程主机上的 OpenWrt 服务。

要求

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

  • 一个 OpenWrt 系统(带有 python)

参数

参数

注释

enabled

布尔值

服务是否应在启动时启动。至少需要 state 和 enabled 之一。

选项

  • false

  • true

name

别名:service

字符串 / 必需

服务的名称。

pattern

字符串

如果服务没有响应“running”命令,则命名一个子字符串,作为“running”结果的替代,该子字符串应该在 ps 命令的输出中找到。如果找到该字符串,则假定服务正在运行。

state

字符串

started/stopped 是幂等操作,除非必要,否则不会运行命令。

restarted 将始终重新启动服务。

reloaded 将始终重新加载。

选项

  • "started"

  • "stopped"

  • "restarted"

  • "reloaded"

属性

属性

支持

描述

check_mode

支持:完全支持

可以在 check_mode 中运行并返回更改状态预测,而无需修改目标。

diff_mode

支持:不支持

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

备注

注意

  • 除 name 外,还需要一个其他选项。

示例

- name: Start service httpd, if not running
  community.general.openwrt_init:
    state: started
    name: httpd

- name: Stop service cron, if running
  community.general.openwrt_init:
    name: cron
    state: stopped

- name: Reload service httpd, in all cases
  community.general.openwrt_init:
    name: httpd
    state: reloaded

- name: Enable service httpd
  community.general.openwrt_init:
    name: httpd
    enabled: true

作者

  • Andrew Gaffney (@agaffney)