Cannot extend logical volume with ansible lvol module

I cannot extend an LVM logical volume with ansible lvol module This is an excerpt from my playbook:

- name: Create lv (lvcreate)
  become: true
  lvol:
    vg: "{{item.vg_name}} "
    lv: "{{item.lv_name}} "
    force: yes
    size: "{{ item.size | default('+100%FREE') }}"
    resizefs: yes
  ignore_errors: yes
  loop: "{{ volumes }}"

And this is the volumes definition:

volumes:
  - vg_name: probavg
    pv_name: /dev/sdb,/dev/sdc
    lv_name: lv1
    mount_point: /fs1
    fstype: xfs

I get this error message:

TASK [Create lv (lvcreate)] ************************************************************************************************************************************************************** Friday 30 July 2021 14:26:26 +0200 (0:00:01.344) 0:00:01.577 *********** failed: [teszt29] (item={u'size': u'+100%FREE', u'mount_point': u'/fs1', u'vg_name': u'probavg', u'lv_name': u'lv1', u'pv_name': u'/dev/sdb,/dev/sdc', u'fstype': u'xfs'}) => {"ansible_loop_var": "item", "changed": false, "err": " Logical Volume "lv1" already exists in volume group "probavg"\n", "item": {"fstype": "xfs", "lv_name": "lv1", "mount_point": "/fs1", "pv_name": "/dev/sdb,/dev/sdc", "size": "+100%FREE", "vg_name": "probavg"}, "msg": "Creating logical volume 'lv1 ' failed", "rc": 5} ...ignoring

Of course it does exist; I want to extend it. (The vg has already been extended with /dev/sdc) Can anybody help?

My ansible version is 2.8.5


Solution 1:

You have spaces in the values of your lv and vg names:

    vg: "{{item.vg_name}} "
    lv: "{{item.lv_name}} "
                         ^- here

Remove them.

    vg: "{{item.vg_name}}"
    lv: "{{item.lv_name}}"

Ansible might think "oh, 'lv1 ' doesn't exist yet, I only see 'lv1'" and tries to create it.