作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 salt 2014.7.0,我可以将以下内容添加到 minion 配置中:
mine_functions:
cmd.run: [echo hello]
然后,在 salt master 上,我可以看到我的“测试”minion 从矿井中检索“hello”:
salt 'test' mine.update
salt 'test' mine.get 'test' cmd.run
test:
----------
test:
hello
这一切都运行得很好。但是,我想使用 mine function alias而不是 cmd.run 句柄。该文档不清楚如何执行此操作,并且到目前为止我尝试过的任何方法都不起作用。以下尝试均失败:
在mine_function中传递参数:
mine_functions:
say_hello:
mine_function:
cmd.run: [echo hello]
将参数作为“名称”字段传递:
mine_functions:
say_hello:
mine_function: cmd.run
name: echo hello
将参数作为“args”列表传递:
mine_functions:
say_hello:
mine_function: cmd.run
args: [echo hello]
但是这些都没有达到预期的结果,通过 say_hello 别名访问“hello”,即:
salt 'test' mine.update
salt 'test' mine.get 'test' say_hello
test:
----------
test:
hello
使用我的函数别名时将参数传递给我的函数的正确方法是什么?
最佳答案
找到了可行的解决方案!
技巧是使用列表作为mine函数别名的值,并将mine_function键作为第一个值,如下所示:
mine_functions:
say_hello:
- mine_function: cmd.run
- echo hello
这会产生所需的输出:
salt 'test' mine.update
salt 'test' mine.get 'test' say_hello
test:
----------
test:
hello
关于salt-stack - 如何将位置参数传递给我的函数别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27028915/
我是一名优秀的程序员,十分优秀!