Description of problem: After set "folder" option with one existing absolute path(which has already been created on vsphere server) in install-config and launch installation,"folder" in cloud-provider-config is set as relative path, it will let pvc creation failed with error of "Failed to provision volume with StorageClass "thin": folder 'jima/jima-upi' not found" In install-config.yaml: ... platform: vsphere: datacenter: dc1 network: VM Network defaultDatastore: 10TB-GOLD password: 'xxxxxx' username: Administrator vCenter: vcsa2-qe.vmware.devcluster.openshift.com folder: /dc1/vm/jima/jima-upi cluster: devel ... In cloud-provider-config: # ../oc describe cm cloud-provider-config -n openshift-config Name: cloud-provider-config Namespace: openshift-config Labels: <none> Annotations: <none> Data ==== config: ---- [Global] secret-name = "vsphere-creds" secret-namespace = "kube-system" insecure-flag = "1" [Workspace] server = "vcsa-qe.vmware.devcluster.openshift.com" datacenter = "dc1" default-datastore = "nvme-ds1" folder = "jima/jima-upi" [VirtualCenter "vcsa-qe.vmware.devcluster.openshift.com"] datacenters = "dc1" When trying to create pvc, error is reported: # oc describe pvc mypvc01 Name: mypvc01 Namespace: default StorageClass: thin Status: Pending Volume: Labels: <none> Annotations: volume.beta.kubernetes.io/storage-provisioner=kubernetes.io/vsphere-volume Finalizers: [kubernetes.io/pvc-protection] Capacity: Access Modes: VolumeMode: Filesystem Events: Type Reason Age From Message ---- ------ ---- ---- ------- Warning ProvisioningFailed <invalid> (x3 over <invalid>) persistentvolume-controller Failed to provision volume with StorageClass "thin": folder 'jima/jima-upi' not found Version-Release number of the following components: rpm -q openshift-ansible rpm -q ansible ansible --version How reproducible: Always Steps to Reproduce: 1. Set "folder" in install-config.yaml with existing absolute path 2. install cluster 3. Actual results: folder in cloud-provider-config is relative path Expected results: folder in cloud-provider-config should be set as absolute path Additional info:
Issues has been verified with 4.5 nightly build: 4.5.0-0.nightly-2020-05-23-193013 on both upi and ipi installation. folder in cm cloud-provider-config is set to absolute path. $ oc describe cm cloud-provider-config -n openshift-config Name: cloud-provider-config Namespace: openshift-config Labels: <none> Annotations: <none> Data ==== config: ---- [Global] secret-name = "vsphere-creds" secret-namespace = "kube-system" insecure-flag = "1" [Workspace] server = "vcsa-qe.vmware.devcluster.openshift.com" datacenter = "dc1" default-datastore = "nvme-ds1" folder = "/dc1/vm/test/jimaupi" [VirtualCenter "vcsa-qe.vmware.devcluster.openshift.com"] datacenters = "dc1" Events: <none>
Is there a fix going to be implemented that allows the folder value to not be absolute? This is the way it worked previously? If it must from now on always be the absolute path then there is a fix needed to be put in the code that translates what is put in the install-config.yaml that automatically generates the cloud-provider-config data so it generates the absolute path for the folder parm.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:2409
> Is there a fix going to be implemented that allows the folder value to not be absolute? This is the way it worked previously? It didn't really work previously, hence this bug... I think it would help me answer your questions if I understood the concern. Is this causing an issue? breaking some sort of workflow? > If it must from now on always be the absolute path then there is a fix needed to be put in the code that translates what is put in the install-config.yaml that automatically generates the cloud-provider-config data so it generates the absolute path for the folder parm. This commit shows the approach for validating folder path in the install config: https://github.com/openshift/installer/commit/e93985366d224d023574e0359833c44162a2bdb5#diff-9cc79a09db6f5387dec9d985adf489f3R80-R95