tehtbl.reboot

构建状态

角色描述

在需要时重启系统。

示例剧本

此示例来自 molecule/default/converge.yml,在每次提交、拉取请求和发布时进行测试。

---
- name: 收敛
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: tehtbl.reboot

运行此命令的机器可能需要准备,我使用此剧本来确保一切就绪,以便角色可以正常工作。

---
- name: 准备
  hosts: all
  become: true
  gather_facts: false

  roles:
    - role: tehtbl.bootstrap

角色变量

这些变量在 defaults/main.yml 中设置:

---
# ------------------------------------------------------------------------
# reboot 的默认文件
# ------------------------------------------------------------------------

# 有些操作系统可以判断是否需要重启。此参数可以设置为始终重启。
reboot_always: false

# 在发送重启之前等待多长时间。
reboot_delay: 4

# 在检查机器是否启动之前等待的秒数。
reboot_up_delay: 8

# 您可以指定重启消息,方便审计。
reboot_message: "通过 Ansible 角色 tehtbl.reboot 重启"

要求

  • 访问包含软件包的仓库,通常在互联网上。
  • 一份最新版本的 Ansible。(测试在当前、上一个和下一个版本的 Ansible 上运行。)

背景

该角色是许多兼容角色的一部分。有关更多信息,请查看 我的其他角色

兼容性

该角色已在以下 Docker 镜像上进行测试:

容器 标签 允许失败
debian stable
debian testing
debian unstable
ubuntu xenial
ubuntu bionic
ubuntu focal
ubuntu devel

该角色在以下 Ansible 版本上经过测试:

使用 Tox 进行测试

单元测试 在每次提交、拉取请求、发布和定期进行。

如果您发现问题,请在 GitHub 上注册。

测试使用 ToxMolecule 进行:

Tox 测试多个 Ansible 版本。Molecule 测试多个发行版。

要使用默认设置进行测试(任何已安装的 Ansible 版本,命名空间: tehtbl,镜像: ubuntu,标签: latest):

molecule test

# 或选择特定镜像:
IMAGE="ubuntu" molecule test

# 或选择特定镜像和标签:
IMAGE="debian" TAG="stable" tox

或者,您可以测试多个 Ansible 版本,并选择正确的镜像:

Tox 允许测试多个版本的 Ansible。要运行默认测试(命名空间: tehtbl,镜像: ubuntu,标签: latest):

tox

# 要运行 Ubuntu (命名空间: `tehtbl`,标签: `latest`)
IMAGE="ubuntu" tox

# 或进行更多自定义:
IMAGE="debian" TAG="stable" tox -e py37-ansible-current

使用 Vagrant 进行测试

通过以下命令安装 vagrant 插件:

vagrant plugin install vagrant-reload

通过 VirtualBox 提供程序启动测试:

vagrant up

许可证

MIT 许可证

作者信息

来源

这项工作基于许多人的出色工作,例如 Robert de BockJeff GeerlingThomas Waldmann。谢谢!

安装
ansible-galaxy install tehtbl.reboot
许可证
mit
下载
4.2k
拥有者