ERROR: apt не является правовым параметром Ansible Play
Я получаю следующую ошибку при попытке запустить файл YML: -
[email protected]:~$ ansible-playbook -i hostfile setup.yml
ОШИБКА:
apt не является допустимым параметром Ansible Play
Ansible версия: 1.9.2
YML файл: -
---
- name: Install MySQL server
apt: name=mysql-server state=latest
- name: Install Apache module for MySQL authentication
apt: name=libapache2-mod-auth-mysql state=latest
- name: Install MySQL module for PHP
apt: name=php5-mysql state=latest
Ответы
Ответ 1
Ваш файл yml должен выглядеть примерно так:
---
- hosts: all
become: yes
tasks:
- name: Install packages
apt:
name:
- mysql-server
- libapache2-mod-auth-mysql
- php5-mysql
state: latest
cache_valid_time: 3600 # update cache if more than an hour old
Ответ 2
Обычно это означает, что ваш yML файл вашей игры не соответствует синтаксису yml. Проверьте пробелы, дефис и т.д. Взгляните на существующие рабочие файлы yml, например, тот, который был вставлен smiller171 в приведенном выше ответе. У меня также была аналогичная ошибка, оказалось, что мой синтаксис неверен.
Ответ 3
Вы пытаетесь запустить файл setup.yml напрямую с ansible-playbook. Как упомянул @smiler171 в своем ответе, правильный формат для этого следующий:
---
- hosts: all
tasks:
- name: Install MySQL server
apt: name=mysql-server state=latest
- name: Install Apache module for MySQL authentication
apt: name=libapache2-mod-auth-mysql state=latest
- name: Install MySQL module for PHP
apt: name=php5-mysql state=latest
Ваш текущий формат файла предназначен для импорта и включает. Это полезно, если вы хотите повторно использовать задачи из setup.yml где-то еще. В этом случае вы можете создать другой файл (скажем, playbook.yml), например:
---
- hosts: all
tasks:
- import_tasks: setup.yml
и запустить его:
ansible-playbook -i hostfile playbook.yml