【发布时间】:2020-07-10 11:19:12
【问题描述】:
尝试在 cfg 文件中插入一行,但似乎尝试对其进行评估,但失败,如下例所示:
- name: Set logging output
lineinfile:
dest: /etc/cloud/cloud.cfg.d/05_logging.cfg
state: present
regexp: '^output:'
line: '''output:{all: '| tee -a /var/log/test.log'}'''
进入日志:
错误似乎在“/var/lib/jenkins/workspace/eda-ami-builder/00_build/ami/eda/packer/ansible/roles/bootstrap/tasks/yum.yml”中:第 30 行,列30,但可能 根据确切的语法问题,位于文件的其他位置。
违规行似乎是:
regexp: '^output:' line: '''output:{all: '| tee -a /var/log/cloud-init-output.log'}''' ^ here
【问题讨论】:
-
您的报价不平衡。您期望的确切输出是什么?对于它的价值:
'''被解释为一个开头的单引号,后跟一个转义的单引号(即连续两个单引号)。恐怕您的意图是使用 python 三引号,这不是 yaml 的工作方式。
标签: ansible failed-installation