我希望能够在执行highstate时从支柱/top.sls自动创建一个新的EC2-AWS实例。
这是我的支柱结构:
pillar
|
|-Company A
| |-init.sls
|
|-Company B
| |-init.sls
|
|-Company C
| |-init.sls
|
|-top.sls
|
在支柱文件夹下面的每个文件夹都对应一个奴才。因此,在上述情况下,我有3个仆从(“ A公司”,“ B公司”和“ C公司”)。
在运行高状态时所有小兵都已正确设置...
我已经安装了salt-cloud,并通过调用以下命令成功创建了新的AWS实例:
salt-cloud -p {profile} {new minion name}
问题:
现在,我想在添加新文件夹(例如:“ Company D”)时自动创建新的AWS实例。
pillar/top.sls:
---------------
# 'Company D' has just been added to the list
{% set machines = ['Company A', 'Company B', 'Company C', 'Company D']%}
base:
{% for machine in machines %}
# The below is pseudo-code that will test if the minion already exists
{% if not machine.exists %}
# Create the minion using salt-cloud
{% salt-cloud -p 'profileX' machine %}
{% endif %}
'{{machine}}':
- {{machine}}
{% endfor %}