diff --git a/python/src/mas/cli/aiservice/install/app.py b/python/src/mas/cli/aiservice/install/app.py index a6f1d8832b4..4389da5a50a 100644 --- a/python/src/mas/cli/aiservice/install/app.py +++ b/python/src/mas/cli/aiservice/install/app.py @@ -308,7 +308,7 @@ def nonInteractiveMode(self) -> None: self.fatalError(f"Unsupported format for {key} ({value}). Expected int:int:boolean") # Arguments that we don't need to do anything with - elif key in ["accept_license", "dev_mode", "skip_pre_check", "skip_grafana_install", "no_confirm", "no_wait_for_pvc", "help", "advanced", "simplified"]: + elif key in ["accept_license", "dev_mode", "skip_pre_check", "skip_grafana_install", "no_confirm", "help", "advanced", "simplified"]: pass elif key == "manual_certificates": @@ -351,7 +351,6 @@ def install(self, argv): instanceId = args.aiservice_instance_id # Properties for arguments that control the behavior of the CLI self.noConfirm = args.no_confirm - self.waitForPVC = not args.no_wait_for_pvc self.licenseAccepted = args.accept_license self.devMode = args.dev_mode @@ -447,12 +446,6 @@ def install(self, argv): self.printH1("Launch Install") pipelinesNamespace = f"aiservice-{self.getParam('aiservice_instance_id')}-pipelines" - if not self.noConfirm: - self.printDescription(["If you are using storage classes that utilize 'WaitForFirstConsumer' binding mode choose 'No' at the prompt below"]) - wait = self.yesOrNo("Wait for PVCs to bind") - else: - wait = False - with Halo(text='Validating OpenShift Pipelines installation', spinner=self.spinner) as h: if installOpenShiftPipelines(self.dynamicClient): h.stop_and_persist(symbol=self.successIcon, text="OpenShift Pipelines Operator is installed and ready to use") @@ -467,7 +460,6 @@ def install(self, argv): instanceId=self.getParam("aiservice_instance_id"), storageClass=self.pipelineStorageClass, accessMode=self.pipelineStorageAccessMode, - waitForBind=wait, configureRBAC=(self.getParam("service_account_name") == "") ) prepareInstallSecrets( diff --git a/python/src/mas/cli/aiservice/install/argBuilder.py b/python/src/mas/cli/aiservice/install/argBuilder.py index ec1d24404e5..92c7e677245 100644 --- a/python/src/mas/cli/aiservice/install/argBuilder.py +++ b/python/src/mas/cli/aiservice/install/argBuilder.py @@ -94,8 +94,6 @@ def buildCommand(self) -> str: # ----------------------------------------------------------------------------- if self.devMode: command += f" --dev-mode{newline}" - if not self.waitForPVC: - command += f" --no-wait-for-pvc{newline}" if self.getParam('skip_pre_check') is True: command += f" --skip-pre-check{newline}" if self.getParam('image_pull_policy') != "": diff --git a/python/src/mas/cli/aiservice/install/argParser.py b/python/src/mas/cli/aiservice/install/argParser.py index bb4c14b4bf5..e99a07b33a7 100644 --- a/python/src/mas/cli/aiservice/install/argParser.py +++ b/python/src/mas/cli/aiservice/install/argParser.py @@ -470,12 +470,6 @@ def isValidFile(parser, arg) -> str: default=False, help="Configure installation for development mode", ) -otherArgGroup.add_argument( - "--no-wait-for-pvc", - required=False, - action="store_true", - help="Disable the wait for pipeline PVC to bind before starting the pipeline" -) otherArgGroup.add_argument( "--skip-pre-check", required=False, diff --git a/python/src/mas/cli/install/app.py b/python/src/mas/cli/install/app.py index 872f2b246bb..e14569b1659 100644 --- a/python/src/mas/cli/install/app.py +++ b/python/src/mas/cli/install/app.py @@ -1345,7 +1345,7 @@ def nonInteractiveMode(self) -> None: self.fatalError(f"Unsupported format for {key} ({value}). Expected int:int:boolean") # Arguments that we don't need to do anything with - elif key in ["accept_license", "dev_mode", "skip_pre_check", "skip_grafana_install", "no_confirm", "no_wait_for_pvc", "help", "advanced", "simplified"]: + elif key in ["accept_license", "dev_mode", "skip_pre_check", "skip_grafana_install", "no_confirm", "help", "advanced", "simplified"]: pass elif key == "manual_certificates": @@ -1461,7 +1461,6 @@ def install(self, argv): # Properties for arguments that control the behavior of the CLI self.noConfirm = args.no_confirm - self.waitForPVC = not args.no_wait_for_pvc self.licenseAccepted = args.accept_license self.devMode = args.dev_mode self.skipGrafanaInstall = args.skip_grafana_install @@ -1522,13 +1521,6 @@ def install(self, argv): self.slsLicenseFile() self.manualCertificates() - if not self.noConfirm and not self.waitForPVC: - self.printDescription(["If you are using storage classes that utilize 'WaitForFirstConsumer' binding mode choose 'No' at the prompt below"]) - self.waitForPVC = self.yesOrNo("Wait for PVCs to bind") - - if not self.waitForPVC: - self.setParam("no_wait_for_pvc", True) - # Show a summary of the installation configuration self.printH1("Non-Interactive Install Command") self.printDescription([ @@ -1557,7 +1549,7 @@ def install(self, argv): pipelinesNamespace = f"mas-{self.getParam('mas_instance_id')}-pipelines" with Halo(text='Validating OpenShift Pipelines installation', spinner=self.spinner) as h: - if installOpenShiftPipelines(self.dynamicClient, self.getParam("storage_class_rwx")): + if installOpenShiftPipelines(self.dynamicClient, customStorageClassName=self.getParam("storage_class_rwx")): h.stop_and_persist(symbol=self.successIcon, text="OpenShift Pipelines Operator is installed and ready to use") else: h.stop_and_persist(symbol=self.successIcon, text="OpenShift Pipelines Operator installation failed") @@ -1570,7 +1562,6 @@ def install(self, argv): instanceId=self.getParam("mas_instance_id"), storageClass=self.pipelineStorageClass, accessMode=self.pipelineStorageAccessMode, - waitForBind=self.waitForPVC, configureRBAC=(self.getParam("service_account_name") == "") ) prepareInstallSecrets( diff --git a/python/src/mas/cli/install/argBuilder.py b/python/src/mas/cli/install/argBuilder.py index 535d9420baf..16f5c6b20e5 100644 --- a/python/src/mas/cli/install/argBuilder.py +++ b/python/src/mas/cli/install/argBuilder.py @@ -541,8 +541,6 @@ def buildCommand(self) -> str: # ----------------------------------------------------------------------------- if self.devMode: command += f" --dev-mode{newline}" - if not self.waitForPVC: - command += f" --no-wait-for-pvc{newline}" if self.getParam('skip_pre_check') is True: command += f" --skip-pre-check{newline}" if self.getParam('skip_grafana_install') is True: diff --git a/python/src/mas/cli/install/argParser.py b/python/src/mas/cli/install/argParser.py index f4290ca4f16..31bf7f7b957 100644 --- a/python/src/mas/cli/install/argParser.py +++ b/python/src/mas/cli/install/argParser.py @@ -1491,12 +1491,6 @@ def isValidFile(parser: argparse.ArgumentParser, arg: str) -> str: default=False, help="Configure installation for development mode" ) -otherArgGroup.add_argument( - "--no-wait-for-pvc", - required=False, - action="store_true", - help="Disable the wait for pipeline PVC to bind before starting the pipeline" -) otherArgGroup.add_argument( "--skip-pre-check", required=False, diff --git a/python/src/mas/cli/install/summarizer.py b/python/src/mas/cli/install/summarizer.py index 6612acb0858..f3e37b91712 100644 --- a/python/src/mas/cli/install/summarizer.py +++ b/python/src/mas/cli/install/summarizer.py @@ -391,8 +391,8 @@ def grafanaSummary(self) -> None: self.printSummary("Install Grafana", "Install" if self.getParam("grafana_action") == "install" else "Do Not Install") def installSummary(self) -> None: - self.printH2("Install Process") - self.printSummary("Wait for PVCs to bind", "No" if self.getParam("no_wait_for_pvc") else "Yes") + pass + # self.printH2("Install Process") def displayInstallSummary(self) -> None: self.printH1("Review Settings") diff --git a/python/test/aiservice/install/test_app.py b/python/test/aiservice/install/test_app.py index 63f25948eab..71e2d61dcf6 100644 --- a/python/test/aiservice/install/test_app.py +++ b/python/test/aiservice/install/test_app.py @@ -52,6 +52,7 @@ def test_install_noninteractive(tmpdir): mock.patch('mas.cli.aiservice.install.app.getCurrentCatalog') as get_current_catalog, mock.patch('mas.cli.aiservice.install.app.installOpenShiftPipelines'), mock.patch('mas.cli.aiservice.install.app.updateTektonDefinitions'), + mock.patch('mas.cli.aiservice.install.app.prepareAiServicePipelinesNamespace'), mock.patch('mas.cli.aiservice.install.app.launchInstallPipeline') as launch_ai_service_install_pipeline ): dynamic_client_class.return_value = dynamic_client @@ -142,6 +143,7 @@ def test_install_interactive(tmpdir): mock.patch('mas.cli.aiservice.install.app.getCurrentCatalog') as get_current_catalog, mock.patch('mas.cli.aiservice.install.app.installOpenShiftPipelines'), mock.patch('mas.cli.aiservice.install.app.updateTektonDefinitions'), + mock.patch('mas.cli.aiservice.install.app.prepareAiServicePipelinesNamespace'), mock.patch('mas.cli.aiservice.install.app.launchInstallPipeline') as launch_ai_service_install_pipeline, mock.patch('mas.cli.cli.isSNO') as is_sno, mock.patch('mas.cli.displayMixins.prompt') as mixins_prompt,