我正在尝试创建具有与其值匹配的with_items
值的文件。
我有一个像这样的 var 列表:
sites:
- domain: google.com
cname: blue
- domain: facebook.com
cname: green
- domain: twitter.com
cname: red
我为此任务的列表中的每个对象创建单独的文件:
- name: Create files
template:
src: file.conf
dest: "/etc/nginx/conf.d/{{item.cname}}.conf"
with_items: "{{sites}}"
这两个都很好用。我需要在我的模板文件中拥有什么才能创建一个名为blue.conf
并且只有.google.com
我尝试了很多变化。我最接近的是:
server {
listen 80;
listen [::]:80;
{% for item in sites %}
server_name {{item.cname}}.es.nodesource.io;
location / {
proxy_pass {{item.domain}};
}
{% endfor %}
}
这将创建单个文件,但每个文件都有所有域和 cnames。