2
bash 쉘에서 작동하는 스크립트가 있습니다. 나는 그것을 Ansible에 넣었고, 플레이 북에 예외가 생깁니다.오류! 불균형 한 jinja2 블록이나 따옴표로 나누기에 실패했습니다.
- name: add mnt to ignore_filesystems
shell: |
grep ignore_filesystem {{ cdm_path }} | awk -F'=' '{print $2}' | egrep '\^\\/mnt\*'
if [ $? -eq 0 ]; then
echo 'do nothing';
else
echo 'no';
items=$(grep ignore_filesystem {{ cdm_path }} | awk -F'=' '{print $2}')
if [ ${#items} -gt 1 ]; then
echo 'making the change'
sed -ie '/ignore_filesystem/ s~$~|^\\/mnt*~' {{ cdm_path }}
else
echo 'making the change'
sed -ie '/ignore_filesystem/ s~ignore_filesystem = *~ignore_filesystem = ^\\/mnt*~' {{ cdm_path }}
fi
fi
register: ignore_filesystems
changed_when: '"making the change" in ignore_filesystems.stdout'
나는 작전 실행하려고 다음과 같은 메시지가 무엇입니까 왜이 실패 할 수도 있습니다에
ERROR! failed at splitting arguments, either an unbalanced jinja2 block or quotes: grep ignore_filesystem {{ cdm_path }} | awk -F'=' '{print $2}' | egrep '\^\\/mnt\*'
if [ $? -eq 0 ]; then
echo 'do nothing';
else
echo 'no';
items=$(grep ignore_filesystem {{ cdm_path }} | awk -F'=' '{print $2}')
if [ ${#items} -gt 1 ]; then
echo 'making the change'
sed -ie '/ignore_filesystem/ s~$~|^\\/mnt*~' {{ cdm_path }}
else
echo 'making the change'
sed -ie '/ignore_filesystem/ s~ignore_filesystem = *~ignore_filesystem = ^\\/mnt*~' {{ cdm_path }}
fi
fi
The error appears to have been in '/home/username/provisioning/provisioning/edit_nimbus.yml':
line 179, column 5, but may be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
- name: add mnt to ignore_filesystems
^here
어떤 생각을?
============================================== ===========================
UPDATE :
시도>뿐만 아니라 | 모든 줄을 동일한 들여 쓰기 수준으로 만들었습니다. 여전히 같은 오류