Hi Brian,
As you suggested its worked for input parameter but not for default it giving failed task
- name: Reloading Service
with_items: "{{ servicename.split(',') | ternary((servicename|default('')).split(','),[]) }}"
Output result.
ansible-playbook --extra-vars "host=node1 servicename=[]" test.yml
TASK [role_common : Reloading Service] ****************************************************************
task path: /etc/ansible/roles/tasks/common.yml:17
Monday 01 October 2018 07:19:09 +0000 (0:00:00.582) 0:00:12.273 ********
failed: [node1] (item=[]) => changed=false
item: '[]'
msg: 'Could not find the requested service []: host'
Waiting for your response.