API 서비스를위한 복잡한 상태를 만들었습니다. git checkouts, python venv, uwsgi, nginx 등이 포함되어 있습니다. 정상적으로 작동합니다.SaltStack : 컨텍스트에서 다른 상태를 어떻게 반복합니까?
이제 템플릿으로 바꾸고 minion 당 여러 번 실행할 것입니다. 변수가 기둥에서 제공되는 것과 같습니다.
{% for apiserver in pillar.apiservers %}
include apiserver_template.sls, locals: apiserver.config
{% endfor %}
여기서 apiserver_template가 apiserver.config 각 API 인스턴스에 대한 모든 구성 데이터를 구비하여, 그것에 공급 상황에서 작동 할 것이다. 나는 syntax가 잘못되었다는 것을 알고 있지만 잘하면 local variable을 제공하면서 ruby partial을 실행하는 것과 같은 아이디어를 전달하고있다.
소금기가있는 곳에서 어떻게 제대로 이루어 집니까?
고마워, 나는 내 자신과 아주 비슷한 것을했다. 잠시 동안 나를 혼란스럽게 만들었던 유일한 이유는 템플릿 상태에서 일부 템플릿 파일을 렌더링하고이를 변수에 전달해야한다는 것이기 때문이다. /opt/{{apisite ini : file.managed : - 출처 : salt : //files/api.ini - 템플릿 : jinja - 컨텍스트 : [sitename]]}/api - {{apisite [ 'sitename' 사이트 이름 : {{apisite [ 'sitename']}} apiport : {{apisite [ 'apiport']}} whis is very wugly imo – DeeY