sourcejedi.etckeeper

sourcejedi.etckeeper

安装 etckeeper。使用版本控制系统跟踪 /etc 的内容。

当前的 /etc 内容被记录在一个 Git 仓库中。 Etckeeper 会在每天的间隔内创建新的提交,当文件被包管理器创建或更改时(如果支持)。

状态

这个角色是为了在现有系统上工作而编写的。它已经测试可以在以下情况下正常工作:

  • etckeeper 已经安装
  • etckeeper 仓库是否存在
  • etckeeper 仓库存在但没有任何提交

支持 Ansible 的 --check 模式。

如果在 etckeeper 没有完全安装的情况下运行检查模式,执行将失败。这种行为是预期的,因为这是一个复杂的角色,其中某些任务依赖于先前的任务。我们确保这种行为,确保检查模式不会跳过某些类型的任务,并且不会误导地报告“changed=0”。

要求

已在 Fedora、CentOS、Debian 和 Ubuntu 16.04+ 上成功使用。我想大多数 Linux 发行版都会提供适用于此角色的 etckeeper 包。

在 CentOS 上,将添加 EPEL 仓库以提供 etckeeper 包。

某些旧版本的 Ubuntu 无法使用,因为它们的打包将默认后端更改为 bzr,而不是 git。 Etckeeper 不推荐这样做——后端应为 git,除非用户有强烈的其他偏好。此角色专门为 git 实现(见下文)。我可能接受一些关于替代方案的最小拉取请求。

依赖关系

user.email 会自动为 git 仓库设置。这是 git 所要求的,而较旧版本的 etckeeper 在某些情况下未能提供值 在某些情况下。我没有包含一个角色变量来改变使用的确切值。然而,如果 user.email 已经设置(例如在 /root/.gitconfig 中),则此步骤会被跳过。因此如果你在意所使用的值,请确保提前设置你的 /root/.gitconfig。 (或者给我发一个问题/拉取请求,解释为什么你希望有一个角色变量)。

许可证

此角色使用 GPLv3 许可,如果这造成任何问题,请打开一个问题。

关于项目

Install etckeeper. Track the contents of /etc using a version control system.

安装
ansible-galaxy install sourcejedi.etckeeper
许可证
gpl-3.0
下载
452
拥有者