Ansible循环查找问题

问题描述 投票:0回答:1

我试图从源码安装apache http,并使用以下编译命令,结果出现了上述错误。有什么帮助吗?

   - name: Install Apache, Version n -- {{ apache_version }})
     command: "{{ item }} chdir={{ apache_source_dir }}"
     with_items:
        - >
          ./configure --with-apr={{ apr-dir }} --with-apr-util={{ apr_util_dir }}
          --enable-mods-shared=all --enable-ssl --enable-so
          --with-pcre={{ pcre_dir}}/pcre-config --prefix={{ apache_install_dir }}`
        - /usr/bin/make
        - /usr/bin/make install
     become: yes

错误。

TASK [Install Apache, Version n -- 2.4.43)] ***************************************************
fatal: [physoaapp03-tst]: FAILED! => {"msg": "Unable to look up a name or access an attribute in template string (./configure --with-apr={{ apr-dir }} --with-apr-util={{ apr_util_dir }}  --enable-mods-shared=all --enable-ssl --enable-so  --with-pcre={{ pcre_dir}}/pcre-config --prefix={{ apache_install_dir }}`\n).\nMake sure your variable name does not contain invalid characters like '-': unsupported operand type(s) for -: 'StrictUndefined' and 'StrictUndefined'"}

有谁能告诉我,我的代码哪里需要改进吗?

variables ansible lookup
1个回答
1
投票

确保你的变量名不包含无效的字符,如'-'。

错误已经说明了问题和解决方法。

更改 {{ apr-dir }}{{ apr_dir }} 诸如此类。把声明也改了。

请通过 关于ansible中变量名称的文档 以避免今后出现此类问题。

© www.soinside.com 2019 - 2024. All rights reserved.