以下是我想要做的事情:
- 拥有多台 Linux 服务器用于构建 Android 开源项目,并使用 Android 虚拟设备(Cuttlefish 或 Goldfish/Emulator)测试这些构建
- 使用相同的配置来管理所有 Linux 服务器。
- 让所有具有大型代码库检出(例如 AOSP)的机器都已经进行构建,以便尽可能快地进行增量源代码获取 + 构建。
有什么好办法:
- 定义每台 Ubuntu 机器的配置。
- 能够快速将更新部署到所有机器
- 能够快速部署/设置新机器
通过如下组合可以合理/可能地实现这一点吗?
- 设置第一台机器。将其定义为 Ubuntu Server 安装程序 + 安装后步骤(如安装软件包、同步项目源代码、构建项目等)的组合。安装后步骤在 Ansible 剧本中定义。
- 将第一台机器实时克隆到其他机器(例如https://nikvdp.com/post/cloning-a-linux-install/?)
除了上述之外还有其他/更好的选择吗?
我还想轻松管理对此环境的更改。比如,也许 6-12 个月后,会有新的包/工作区要求。我想对第一台机器进行这些更改,然后重新部署到其他机器。这里最好的方法是将第一台机器(再次)重新克隆到其他机器吗?