gpt4 book ai didi

salt-stack - 使用包含在 SaltStack 栈中传递变量

转载 作者:行者123 更新时间:2023-12-03 15:50:55 26 4
gpt4 key购买 nike

我有几个几乎相同的状态。他们都部署项目,创建virtualenv并配置主管。区别仅在于 repo、项目名称和一些附加操作。

很多代码是重复的。是否可以将相同的部分放入文件中并包含其他变量?

在 Ansible 中可以这样做:

tasks:
- include: wordpress.yml
vars:
wp_user: timmy
ssh_keys:
- keys/one.txt
- keys/two.txt

最佳答案

这个问题类似于 this one

如果我正确理解了您的问题 - 我相信实现您想要的最佳方法是使用 Salt Macros .

有了这个,您的大部分状态将转到带有占位符的宏,例如:

# lib.sls
{% macro create_user(user, password) %}
{{user}}:
user.present:
- home: /home/{{user}}
- password: {{password}}
{% endmacro %}

然后您的状态将如下所示:
# john.sls
{% from 'lib.sls' import create_user with context %}
{{ create_user('john', '<password hash>') }}

和:
# jane.sls
{% from 'lib.sls' import create_user with context %}
{{ create_user('john', '<password hash>') }}

关于salt-stack - 使用包含在 SaltStack 栈中传递变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38904308/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com