运行 ansible 脚本出现错误 - "Unicode object has no attribute "site_name”

Getting an error when running ansible script - "Unicode object has no attribute "site_name"

我目前正在 运行创建一个我创建的 ansible galaxy 项目。我想要做的是获取变量的属性之一并将其设置为路径名。我在名为 websiteNames 的组变量中创建了一个文件,在该文件中我有一个这样设置的变量 -

my_websites:

  - site_name: website2
    site_url: website2.com

  - site_name: website1
    site_url: website1.com

我调用它的 ansible 文件是这样设置的 -

- name: deploy public vhosts /etc/httpd/conf.d
  template:  
    src: ../../websites/files/vhost.conf 
    dest: "/etc/httpd/conf.d/{{ item.site_name }}-public.conf" 
    owner: root 
    group: root 
    mode: 0644
  with_items: my_websites

但是,当我尝试 运行 实际的剧本时,出现以下错误 - FAILED! => {"failed": true, "msg": "'unicode object' has no attribute 'site_name'"}

如果有帮助,这是模板文件中我调用变量的部分 -

<VirtualHost *:80>
    DocumentRoot /var/www/html/{{ site_name }}/stuff
    ServerName {{ site_name }}

我是否需要在某些时候调用组车 websiteNames 文件?它似乎无法识别已添加的 group_var。

谢谢。

原来我遇到的问题是我在主机文件中调用的组名为 "myServers",但 group_var 的名称是 my_servers。我没有意识到组变量必须与原始主机变量同名。