Hi all,
I am new to Ansible learning and I start practicing yaml playbook writings.
Though I am able to have a program with correct indent, ansible-playbook still pointing errors. I have no programming experience than bash scripting.
Could someone highlight, what I am missing.
Any guidance to do a search here before posting will be much appreciated.
Thanks
`
[student@mgmvm1 ~]$ ansible --version
ansible 2.3.1.0
config file = /home/student/ansible.cfg
configured module search path = Default w/o overrides
python version = 2.7.5 (default, Nov 6 2016, 00:28:07) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)]
[student@mgmvm1 ~]$ python -c ‘import yaml, sys; print yaml.load(sys.stdin)’ < test.yml
[{‘become’: True, ‘tasks’: [{‘block’: [{‘state’: ‘latest’, ‘yum’: None, ‘name’: ‘httpd’}, {‘state’: ‘latest’, ‘yum’: None, ‘name’: ‘firewalld’}]}, {‘block’: [{‘state’: ‘enabled’, ‘permanent’: True, ‘name’: ‘firewalld permits http service’, ‘service’: ‘http’, ‘firewalld’: None, ‘immediate’: True}]}, {‘block’: [{‘state’: ‘started’, ‘enabled’: True, ‘name’: ‘httpd’, ‘service’: None}, {‘state’: ‘started’, ‘enabled’: True, ‘name’: ‘firewalld’, ‘service’: None}]}, {‘block’: [{‘content’: ‘Welcome to the example.com intranet!\n’, ‘dest’: ‘/var/www/html/index.html’, ‘copy’: None, ‘name’: ‘test html page’}]}], ‘hosts’: ‘ctlvm.example.com’, ‘name’: ‘intranet services’}, {‘tasks’: [{‘url’: ‘http://ctlvm.example.com’, ‘status_code’: 200, ‘name’: ‘connect to intranet’, ‘uri’: None}], ‘hosts’: ‘localhost’, ‘name’: ‘test’}]
[student@mgmvm1 ~]$ ansible-playbook --syntax-check test.yml
[WARNING]: While constructing a mapping from /home/student/test.yml, line 7, column 9, found a duplicate dict key (name).
Using last defined value only.
[WARNING]: While constructing a mapping from /home/student/test.yml, line 13, column 9, found a duplicate dict key (name).
Using last defined value only.
[WARNING]: While constructing a mapping from /home/student/test.yml, line 28, column 9, found a duplicate dict key (name).
Using last defined value only.
[WARNING]: While constructing a mapping from /home/student/test.yml, line 34, column 9, found a duplicate dict key (name).
Using last defined value only.
ERROR! ‘state’ is not a valid attribute for a Task
The error appears to have been in ‘/home/student/test.yml’: line 7, column 9, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
- block:
- name: latest httpd version installed
^ here
[student@mgmvm1 ~]$ cat test.yml