Мы использовали символы табуляции в некоторых YAML-файлах здесь:

host:   "foo"
port:   8011
p:      "bar"

По какой-то причине одна и та же версия Ansible, использующая ту же книгу воспроизведения, прекрасно работает с этими файлами для некоторых пользователей, но жалуется на "недопустимые символы" для других:

ERROR! Syntax Error while loading YAML.
  found character '\t' that cannot start any token

The error appears to have been in '.../playbooks/roles/native-package/defaults/main.yml': line 1, column
8, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:


tmpdir: >-
       ^ here
There appears to be a tab character at the start of the line.

YAML does not use tabs for formatting. Tabs should be replaced with spaces.

For example:
    - name: update tooling
      vars:
        version: 1.2.3
#    ^--- there is a tab there.

Should be written as:
    - name: update tooling
      vars:
        version: 1.2.3
# ^--- all spaces here.

Я не спрашиваю, являются ли вкладки "лучше", чем пробелы - но я хотел бы понять несоответствие ...

0