[localhost] (item={'repo': 'deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main', 'key': 'https://packages.microsoft.com/keys/microsoft.asc', 'filename': 'vscode.list'}) => {"ansible_loop_var": "item", "changed": false, "item": {"filename": "vscode.list", "key": "https://packages.microsoft.com/keys/microsoft.asc", "repo": "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main"}, "msg": "apt cache update failed"}
fatal: [localhost]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'dict object' has no attribute 'filename'\n\nThe error appears to be in '/home/work/git/apt_desktop_prepare/roles/install-repos/tasks/main.yml': line 1, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: Add apt repository\n ^ here\n"}
айтем словаря вроде верно составлен
В списке реп, которые добавляете нет filename у второй. Соответственно на ней таск Add apt repository выдаёт ошибку. Либо добавьте filename в список во все репы. Либо filename: '{{ item.filename | default(omit) }}' чтобы если не было такого значения, то всё поле опускать из таска.
Обсуждают сегодня