]> git.apps.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
tests: (lvm_setup.yml), don't shrink lvol
authorGuillaume Abrioux <gabrioux@redhat.com>
Tue, 21 Jul 2020 23:51:20 +0000 (01:51 +0200)
committerGuillaume Abrioux <gabrioux@redhat.com>
Wed, 22 Jul 2020 12:25:45 +0000 (14:25 +0200)
when rerunning lvm_setup.yml on existing cluster with OSDs already
deployed, it fails like following:

```
fatal: [osd0]: FAILED! => changed=false
  msg: Sorry, no shrinking of data-lv2 to 0 permitted.
```

because we are asking `lvol` module to create a volume on an empty VG
with size extents = `100%FREE`.

The default behavior of `lvol` is to shrink the volume if the LV's current
size is greater than the requested size.

Given the requested size is calculated like this:

`size_requested = size_percent * this_vg['free'] / 100`

in our case, it is similar to:

`size_requested = 100 * 0 / 100` which basically means `0`

So the current LV size is well greater than the requested size which
leads the module to attempt to shrink it to 0 which isn't obviously now
allowed.

Adding `shrink: false` to the module calls fixes this issue.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
tests/functional/lvm_setup.yml

index 35aeb6889d89c6211f3541d159f495c227f21c8a..15b23bafa6327f6b43b764b74e7a2b64ec8c9278 100644 (file)
         vg: test_group
         lv: data-lv1
         size: 50%FREE
+        shrink: false
     - name: create logical volume 2
       lvol:
         vg: test_group
         lv: data-lv2
         size: 100%FREE
+        shrink: false
     - name: partition  "{{ pv_devices[1] | default('/dev/sdc') }}"for journals
       parted:
         device: "{{ pv_devices[1] | default('/dev/sdc') }}"
@@ -69,3 +71,4 @@
         vg: journals
         lv: journal1
         size: 100%FREE
+        shrink: false