In a role that installs a mcafee antivirus scanner on linux (Don’t ask why; short answer: corporate policy made up by windows people) I have defined a role dependency like so:
You invoke ansible-playbook with the tags argument, incidentally selecting only the tasks in the mcafee role. Invoke without tags and it should run the all_common tasks as well.
mmaas@xmgtansible:~/playbooks$ ansible-playbook site.yml -l xmonopssla00 --tags=mcafee
sudo password:
Traceback (most recent call last):
File “/usr/local/bin/ansible-playbook”, line 269, in
sys.exit(main(sys.argv[1:]))
File “/usr/local/bin/ansible-playbook”, line 209, in main
pb.run()
File “/usr/local/lib/python2.7/dist-packages/ansible/playbook/init.py”, line 229, in run
play = Play(self, play_ds, play_basedir)
File “/usr/local/lib/python2.7/dist-packages/ansible/playbook/play.py”, line 83, in init
ds = self._load_roles(self.roles, ds)
File “/usr/local/lib/python2.7/dist-packages/ansible/playbook/play.py”, line 327, in _load_roles
roles = self._build_role_dependencies(roles, , self.vars)
File “/usr/local/lib/python2.7/dist-packages/ansible/playbook/play.py”, line 276, in _build_role_dependencies
self._build_role_dependencies([dep], dep_stack, passed_vars=dep_vars, level=level+1)
File “/usr/local/lib/python2.7/dist-packages/ansible/playbook/play.py”, line 223, in _build_role_dependencies
included_dep_vars[“tags”] = passed_vars[“tags”].copy()
AttributeError: ‘list’ object has no attribute ‘copy’