如果必须执行以下3个命令,如何对它们进行分组,以便仅需调用一个?

salt '*' git.fetch cwd=/var/git/myproject opts='--all' user=git
salt '*' git.pull cwd=/var/git/myproject opts='origin master'
salt '*' nginx.signal reload

我可以使用fabric将它们放在单个函数中,即deploy,它可以接受一个奴才名称,然后通过master运行,但是我想知道saltstack是否内置了某些内容?

最佳答案

这是自定义模块的不错的选择。

您可以在此处阅读有关创建自定义模块的信息:http://docs.saltstack.com/ref/modules/index.html
将您的自定义模块放在/srv/salt/_modules(默认位置)中,然后运行

salt \* saltutil.sync_modules

然后,您的模块将可以在您的奴才上运行。

如果您的模块名为“deploy”,而函数为“mysite”,那么您的自定义命令将如下所示:
salt \* deploy.mysite

如果要定位一个特定的奴才,它将看起来像这样:
salt 'minion_name' deploy.mysite

关于python - Saltstack分组命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15040725/

10-11 07:42
查看更多