我正在寻找一个可以编写的工具来根据需要自动执行任务,例如安装 LAMP 包:
install package A
install package B
...
modify configure file of package B in line 12, column 23, add or remove the string 'extension=xdebug'
configure SSL
etc
etc
然后你可以像这样运行该文件:
$ tool exec conf.yml
然后,我想撤消要运行的任务:
$ tool rollback conf.yml
运行它会回到原始状态,没有安装和配置软件包。Ubuntu 系统中有没有工具可以做到这一点?
答案1
您正在寻找 ansible 或类似 saltstack、puppet 或 chef 的替代品。
Ansible 可与您运行的剧本配合使用。这些剧本将通过 ssh 连接到您想要的主机,并使用 sudo 使用安装命令。Ansible 使用 python 和 Ansible 模块来执行您在 YAML 中定义的任务。有一个文件编辑模块可以替换或添加行。