Skip to content

Commit e9a7af6

Browse files
author
Sanjay Prabhakar
committed
[patch] fix
1 parent e237048 commit e9a7af6

2 files changed

Lines changed: 13 additions & 5 deletions

File tree

src/mas/devops/ocp.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020
from kubernetes.stream import stream
2121
from kubernetes.stream.ws_client import ERROR_CHANNEL
2222

23+
from .mas import getDefaultStorageClasses
24+
2325
import yaml
2426

2527
logger = logging.getLogger(__name__)
@@ -177,12 +179,18 @@ def waitForPVC(dynClient: DynamicClient, namespace: str, pvcName: str) -> bool:
177179
return foundReadyPVC
178180

179181

180-
def patchPendingPVC(dynClient: DynamicClient, namespace: str, pvcName: str, storageClassName: str) -> bool:
182+
def patchPendingPVC(dynClient: DynamicClient, namespace: str, pvcName: str, storageClassName: str = None) -> bool:
181183
pvcAPI = dynClient.resources.get(api_version="v1", kind="PersistentVolumeClaim")
182184
try:
183185
pvc = pvcAPI.get(name=pvcName, namespace=namespace)
184186
if pvc.status.phase == "Pending" and pvc.spec.storageClassName is None:
185-
pvc.spec.storageClassName = storageClassName
187+
if getStorageClasses is not None:
188+
pvc.spec.storageClassName = storageClassName
189+
else:
190+
defaultStorageClasses = getDefaultStorageClasses(dynClient)
191+
if defaultStorageClasses.provider is not None:
192+
pvc.spec.storageClassName = defaultStorageClasses.rwo
193+
186194
pvcAPI.patch(body=pvc, namespace=namespace)
187195

188196
maxRetries = 60

src/mas/devops/tekton.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
logger = logging.getLogger(__name__)
2828

2929

30-
def installOpenShiftPipelines(dynClient: DynamicClient) -> bool:
30+
def installOpenShiftPipelines(dynClient: DynamicClient, customStorageClassName: str = None) -> bool:
3131
"""
3232
Install the OpenShift Pipelines Operator and wait for it to be ready to use
3333
"""
@@ -94,8 +94,8 @@ def installOpenShiftPipelines(dynClient: DynamicClient) -> bool:
9494
if foundReadyPVC:
9595
logger.info("OpenShift Pipelines postgres is installed and ready")
9696
else:
97-
patchedPVC = patchPVC(dynClient, namespace="openshift-pipelines", pvcName="postgredb-tekton-results-postgres-0")
98-
if patchPVC:
97+
patchedPVC = patchPendingPVC(dynClient, namespace="openshift-pipelines", pvcName="postgredb-tekton-results-postgres-0", storageClassName=customStorageClassName)
98+
if patchedPVC:
9999
logger.info("OpenShift Pipelines postgres is installed and ready")
100100
else:
101101
logger.error("OpenShift Pipelines postgres PVC is NOT ready")

0 commit comments

Comments
 (0)