Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions python/src/mas/cli/install/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -2440,6 +2440,13 @@ def nonInteractiveMode(self) -> None:
self.setParam(key, value)
self.setParam("sls_mongodb_cfg_file", f"/workspace/configs/mongo-{value}.yml")

elif key == "mongodb_provider":
if value:
if self.devMode:
self.setParam(key, value)
else:
raise ValueError("Mongo provider cannot be used in non-dev mode")

# SLS
elif key == "license_file":
if value is not None and value != "":
Expand Down
3 changes: 3 additions & 0 deletions python/src/mas/cli/install/argBuilder.py
Original file line number Diff line number Diff line change
Expand Up @@ -244,6 +244,9 @@ def buildCommand(self) -> str:
if self.getParam("mongodb_namespace") != "":
command += f" --mongodb-namespace \"{self.getParam('mongodb_namespace')}\"{newline}"

if self.devMode and self.getParam("mongodb_provider") != "":
command += f" --mongodb-provider \"{self.getParam('mongodb_provider')}\"{newline}"

# OCP Configuration
# -----------------------------------------------------------------------------
if self.getParam("ocp_ingress_tls_secret_name") != "":
Expand Down
7 changes: 7 additions & 0 deletions python/src/mas/cli/install/argParser.py
Original file line number Diff line number Diff line change
Expand Up @@ -526,6 +526,13 @@ def isValidFile(parser: argparse.ArgumentParser, arg: str) -> str:
help="Namespace for MongoDB Community Operator",
)

mongoArgGroup.add_argument(
"--mongodb-provider",
required=False,
choices=["community", "mck", "rotate"],
help="Mongo provider to use (community or mck or rotate). Only valid with --dev-mode",
)

# OCP Configuration
# -----------------------------------------------------------------------------
ocpArgGroup = installArgParser.add_argument_group(
Expand Down
7 changes: 7 additions & 0 deletions python/src/mas/cli/install/settings/mongodbSettings.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,13 @@ def configMongoDb(self) -> None:
]
)

if self.devMode:
mongodb_provider = self.getParam("mongodb_provider") if self.getParam("mongodb_provider") else "community"
valid_providers = ["community", "mck", "rotate"]
if mongodb_provider not in valid_providers:
raise ValueError(f"Invalid mongodb_provider: {mongodb_provider}. Allowed: {valid_providers}")
self.setParam("mongodb_provider", mongodb_provider)

if (self.architecture != "s390x" and self.architecture != "ppc64le") and self.yesOrNo(
"Create MongoDb cluster using MongoDb Community Edition Operator"
):
Expand Down
3 changes: 3 additions & 0 deletions python/src/mas/cli/install/summarizer.py
Original file line number Diff line number Diff line change
Expand Up @@ -587,6 +587,9 @@ def mongoSummary(self) -> None:
if self.getParam("mongodb_action") == "install":
self.printSummary("Type", "MongoCE Operator")
self.printParamSummary("Install Namespace", "mongodb_namespace")
mongodb_provider = self.getParam("mongodb_provider")
if mongodb_provider:
self.printParamSummary("MongoDB Provider", "mongodb_provider")
elif self.getParam("mongodb_action") == "byo":
self.printSummary("Type", "BYO (mongodb-system.yaml)")
else:
Expand Down
Loading