Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1917022

Summary: Standard storageClass deployed without allowVolumeExpansion leading to allowVolumeExpansion=false default.
Product: OpenShift Container Platform Reporter: Robert Heinzmann <rheinzma>
Component: StorageAssignee: Mike Fedosin <mfedosin>
Storage sub component: OpenStack CSI Drivers QA Contact: David Sanz <dsanzmor>
Status: CLOSED DUPLICATE Docs Contact:
Severity: low    
Priority: medium CC: aos-bugs, pprinett, trees
Version: 4.7Keywords: UpcomingSprint
Target Milestone: ---   
Target Release: 4.7.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-01-20 17:04:38 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Robert Heinzmann 2021-01-16 16:28:25 UTC
Description of problem:

When deploying OpenShift 4.7.0-fc.2, the default StorageClass does not set allowVolumeExpansion: true, disabling volume resize functionality. Documentation draft states it will be deployed with allowVolumeExpansion: true.

Version-Release number of selected component (if applicable):

OpenShift 4.7.0-fc.2
OpenStack 16.1.3 (AIO)

How reproducible:

Steps to Reproduce:
1. Deploy 4.7.0-fc.2
2. Check Storage class "standard-csi"

Actual results:

{
  "apiVersion": "storage.k8s.io/v1",
  "kind": "StorageClass",
  "metadata": {
    "annotations": {
      "storageclass.kubernetes.io/is-default-class": "true"
    },
    "name": "standard-csi",
  },
  "provisioner": "cinder.csi.openstack.org",
  "reclaimPolicy": "Delete",
  "volumeBindingMode": "WaitForFirstConsumer"
}


Expected results:

{
  "apiVersion": "storage.k8s.io/v1",
  "kind": "StorageClass",
  "metadata": {
    "annotations": {
      "storageclass.kubernetes.io/is-default-class": "true"
    },
    "name": "standard-csi",
  },
  "provisioner": "cinder.csi.openstack.org",
  "reclaimPolicy": "Delete",
  "volumeBindingMode": "WaitForFirstConsumer",
  "allowVolumeExpansion": true
}

Additional info:

I ran a quick test as part of the 4.7 hackathon of this and it seems the StorageClass is created without

~~~
allowVolumeExpansion: true
~~~

As this can not be changed without recreating the StorageClass and it is a very handy feature, I wanted to make sure that this is intended as it is shown as "ALLOWVOLUMEEXPANSION" true in the documentation draft.

4.7.0-fc.2 ShiftStack IPI on 16.1:
~~~
[stack@osp16amd ocp-test1]$ oc get storageclass
NAME                 PROVISIONER                RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
standard (default)   kubernetes.io/cinder       Delete          WaitForFirstConsumer   true                   8h
standard-csi         cinder.csi.openstack.org   Delete          WaitForFirstConsumer   false                  8h
~~~

Documentation:
~~~
NAME                   PROVISIONER                RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
standard(default)      cinder.csi.openstack.org   Delete          WaitForFirstConsumer   true                   46h
standard-csi           kubernetes.io/cinder       Delete          WaitForFirstConsumer   true                   46h
~~~

Comment 1 Pierre Prinetti 2021-01-20 16:36:23 UTC
Notes from bug scub:

* a workaround exists
* this is not a regression, as 4.6 did not have this functionality

We still tentatively target 4.7, with low priority.

Comment 2 Mike Fedosin 2021-01-20 17:04:38 UTC

*** This bug has been marked as a duplicate of bug 1906274 ***