使用SaltStack设置环境

时间:2013-10-10 22:36:18

标签: git salt-stack

如何让小兵使用特定的SaltStack环境?

GitFS backend tutorial表示分支将使用分支名称作为标识符映射到环境。如何将这些环境暴露给我的仆从?

举个例子,假设I have a branch名为“pippy”。我想将那个分支部署到特定的奴才。

似乎我可以通过minion的配置文件设置环境。还有其他方法可以从盐主人那里完成吗?

1 个答案:

答案 0 :(得分:18)

这里的关键是top.sls文件是跨环境的。在我们进入之前,重要的是要注意虽然大多数分支将映射到同名环境,但例外是master分支将映射到base环境。

无论如何,到top.sls。在top.sls中,您定义了您的环境,哪些minions是该环境的成员,以及将从该环境为state.highstate运行哪些状态文件。

base:
  '*':
    - basestate
dev:
  'webserver*dev*':
    - webserver
  'db*dev*':
    - db
qa:
  'webserver*qa*':
    - webserver
  'db*qa*':
    - db
pippy:
  'webserver*pippy*':
    - webserver
  'db*pippy*':
    - db

因此,所有minions都将运行basestate.sls环境中的base文件。只有目标仆从才会从其他每个环境中运行状态。

还有更多信息in the topfile documentation

在minion配置中定义环境选项只是将minion与特定环境隔离开来。从topfile定义环境会更加灵活和强大。