I use Ansible 2.9.2 on Ubuntu Server 18.04 + Python 3.6.9. Here is a simple Ansible project: https://github.com/770715/ansible.git
If I run:
ansible-playbook -i aws_ec2.yml add-ssh-keys.yml
it works just fine but when I try to run:
ansible-playbook -i aws_ec2.yml playbook.yml
I get an error:
dev@ops:~/code/build/ansible$ ansible-playbook -i aws_ec2.yml playbook.yml
/usr/lib/python3/dist-packages/requests/__init__.py:80: RequestsDependencyWarning: urllib3 (1.25.7) or chardet (3.0.4) doesn't match a supported version!
RequestsDependencyWarning)
ERROR! unexpected parameter type in action: <class 'bool'>
The error appears to be in '/home/dev/code/build/ansible/roles/docker/tasks/main.yml': line 1, column 3, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
- name: Install Docker
^ here
The YAML file syntax seems to be correct (I have checked that with a number of different validators).
urllib3 (1.25.7) and chardet (3.0.4) are in the latest versions. I'd appreciate it if you could help.
The format of your role is incorrect. While a playbook specifies target hosts and other material, a role is simply a list of tasks. You're getting the error because you've formatted
roles/docker/tasks/main.yml
like a playbook. Instead of:You should have: