mas-cli 12.0.0__py3-none-any.whl → 12.27.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of mas-cli might be problematic. Click here for more details.

Files changed (33) hide show
  1. mas/cli/__init__.py +1 -1
  2. mas/cli/aiservice/install/__init__.py +11 -0
  3. mas/cli/aiservice/install/app.py +810 -0
  4. mas/cli/aiservice/install/argBuilder.py +232 -0
  5. mas/cli/aiservice/install/argParser.py +742 -0
  6. mas/cli/aiservice/install/params.py +120 -0
  7. mas/cli/aiservice/install/summarizer.py +193 -0
  8. mas/cli/cli.py +36 -9
  9. mas/cli/gencfg.py +23 -0
  10. mas/cli/install/app.py +295 -85
  11. mas/cli/install/argBuilder.py +92 -14
  12. mas/cli/install/argParser.py +200 -147
  13. mas/cli/install/catalogs.py +11 -6
  14. mas/cli/install/params.py +32 -6
  15. mas/cli/install/settings/additionalConfigs.py +18 -1
  16. mas/cli/install/settings/db2Settings.py +121 -72
  17. mas/cli/install/settings/kafkaSettings.py +2 -2
  18. mas/cli/install/settings/manageSettings.py +154 -159
  19. mas/cli/install/settings/mongodbSettings.py +1 -1
  20. mas/cli/install/settings/turbonomicSettings.py +1 -3
  21. mas/cli/install/summarizer.py +85 -68
  22. mas/cli/templates/facilities-configs.yml.j2 +25 -0
  23. mas/cli/templates/ibm-mas-tekton.yaml +16683 -7870
  24. mas/cli/update/app.py +43 -9
  25. mas/cli/upgrade/app.py +52 -20
  26. mas/cli/upgrade/argParser.py +7 -0
  27. mas/cli/upgrade/settings/__init__.py +19 -0
  28. mas/cli/validators.py +13 -0
  29. {mas_cli-12.0.0.data → mas_cli-12.27.0.data}/scripts/mas-cli +5 -1
  30. {mas_cli-12.0.0.dist-info → mas_cli-12.27.0.dist-info}/METADATA +12 -3
  31. {mas_cli-12.0.0.dist-info → mas_cli-12.27.0.dist-info}/RECORD +33 -25
  32. {mas_cli-12.0.0.dist-info → mas_cli-12.27.0.dist-info}/WHEEL +1 -1
  33. {mas_cli-12.0.0.dist-info → mas_cli-12.27.0.dist-info}/top_level.txt +0 -0
@@ -21,7 +21,7 @@ class ManageSettingsMixin():
21
21
  "",
22
22
  "Maximo Spatial requires a map server provider in order to enable geospatial capabilities",
23
23
  "You may choose your preferred map provider later or you can enable IBM Maximo Location Services for Esri now",
24
- "This includes ArcGIS Enterprise as part of the Manage and Maximo Spatial bundle (Additional AppPoints required)."
24
+ f"This includes ArcGIS Enterprise as part of the {self.manageAppName} and Maximo Spatial bundle (Additional AppPoints required)."
25
25
  ])
26
26
 
27
27
  if self.yesOrNo("Include IBM Maximo Location Services for Esri"):
@@ -41,8 +41,8 @@ class ManageSettingsMixin():
41
41
 
42
42
  def manageSettings(self) -> None:
43
43
  if self.installManage:
44
- self.printH1("Configure Maximo Manage")
45
- self.printDescription(["Customize your Manage installation, refer to the product documentation for more information"])
44
+ self.printH1(f"Configure Maximo {self.manageAppName}")
45
+ self.printDescription([f"Customize your {self.manageAppName} installation, refer to the product documentation for more information"])
46
46
 
47
47
  self.manageSettingsComponents()
48
48
  self.arcgisSettings()
@@ -52,82 +52,91 @@ class ManageSettingsMixin():
52
52
  self.manageSettingsDatabase()
53
53
  self.manageSettingsCustomizationArchive()
54
54
  self.manageSettingsOther()
55
+ self.manageStorageAndAccessMode()
55
56
 
56
- # Default to RWX storage classes, but fall back to RWO in SNO or when user
57
- # has chosen not to provide a RWX storage class
58
- storageClass = self.getParam("storage_class_rwx")
59
- accessMode = "ReadWriteMany"
60
- if self.isSNO() or self.getParam("storage_class_rwx") == "none":
61
- storageClass = self.getParam("storage_class_rwo")
62
- accessMode = "ReadWriteOnce"
57
+ def manageStorageAndAccessMode(self) -> None:
58
+ # Default to RWX storage classes, but fall back to RWO in SNO or when user
59
+ # has chosen not to provide a RWX storage class
60
+ storageClass = self.getParam("storage_class_rwx")
61
+ accessMode = "ReadWriteMany"
62
+ if self.isSNO() or self.getParam("storage_class_rwx") == "none":
63
+ storageClass = self.getParam("storage_class_rwo")
64
+ accessMode = "ReadWriteOnce"
63
65
 
64
- self.setParam("mas_app_settings_doclinks_pvc_storage_class", storageClass)
65
- self.setParam("mas_app_settings_bim_pvc_storage_class", storageClass)
66
- self.setParam("mas_app_settings_jms_queue_pvc_storage_class", storageClass)
66
+ self.setParam("mas_app_settings_doclinks_pvc_storage_class", storageClass)
67
+ self.setParam("mas_app_settings_bim_pvc_storage_class", storageClass)
68
+ self.setParam("mas_app_settings_jms_queue_pvc_storage_class", storageClass)
67
69
 
68
- self.setParam("mas_app_settings_doclinks_pvc_accessmode", accessMode)
69
- self.setParam("mas_app_settings_bim_pvc_accessmode", accessMode)
70
- self.setParam("mas_app_settings_jms_queue_pvc_accessmode", accessMode)
70
+ self.setParam("mas_app_settings_doclinks_pvc_accessmode", accessMode)
71
+ self.setParam("mas_app_settings_bim_pvc_accessmode", accessMode)
72
+ self.setParam("mas_app_settings_jms_queue_pvc_accessmode", accessMode)
71
73
 
72
74
  def manageSettingsComponents(self) -> None:
73
- self.printH2("Maximo Manage Components")
74
- self.printDescription(["The default configuration will install Manage with Health enabled, alternatively choose exactly what industry solutions and add-ons will be configured"])
75
-
76
- self.params["mas_appws_components"] = "base=latest,health=latest"
77
- if self.yesOrNo("Select components to enable"):
78
- self.params["mas_appws_components"] = "base=latest"
79
- if self.yesOrNo(" - Asset Configuration Manager"):
80
- self.params["mas_appws_components"] += ",acm=latest"
81
- if self.yesOrNo(" - Aviation"):
82
- self.params["mas_appws_components"] += ",aviation=latest"
83
- if self.yesOrNo(" - Civil Infrastructure"):
84
- self.params["mas_appws_components"] += ",civil=latest"
85
- if self.yesOrNo(" - Envizi"):
86
- self.params["mas_appws_components"] += ",envizi=latest"
87
- if self.yesOrNo(" - Health"):
88
- self.params["mas_appws_components"] += ",health=latest"
89
- if self.yesOrNo(" - Health, Safety and Environment"):
90
- self.params["mas_appws_components"] += ",hse=latest"
91
- if self.yesOrNo(" - Maximo IT"):
92
- self.params["mas_appws_components"] += ",icd=latest"
93
- if self.yesOrNo(" - Nuclear"):
94
- self.params["mas_appws_components"] += ",nuclear=latest"
95
- if self.yesOrNo(" - Oil & Gas"):
96
- self.params["mas_appws_components"] += ",oilandgas=latest"
97
- if self.yesOrNo(" - Connector for Oracle Applications"):
98
- self.params["mas_appws_components"] += ",oracleadapter=latest"
99
- if self.yesOrNo(" - Connector for SAP Application"):
100
- self.params["mas_appws_components"] += ",sapadapter=latest"
101
- if self.yesOrNo(" - Service Provider"):
102
- self.params["mas_appws_components"] += ",serviceprovider=latest"
103
- if self.yesOrNo(" - Spatial"):
104
- self.params["mas_appws_components"] += ",spatial=latest"
105
- if self.yesOrNo(" - Strategize"):
106
- self.params["mas_appws_components"] += ",strategize=latest"
107
- if self.yesOrNo(" - Transportation"):
108
- self.params["mas_appws_components"] += ",transportation=latest"
109
- if self.yesOrNo(" - Tririga"):
110
- self.params["mas_appws_components"] += ",tririga=latest"
111
- if self.yesOrNo(" - Utilities"):
112
- self.params["mas_appws_components"] += ",utilities=latest"
113
- if self.yesOrNo(" - Workday Applications"):
114
- self.params["mas_appws_components"] += ",workday=latest"
115
- logger.debug(f"Generated mas_appws_components = {self.params['mas_appws_components']}")
116
-
117
- if ",icd=" in self.params["mas_appws_components"]:
118
- self.printH2("Maximo IT License Terms")
119
- self.printDescription([
120
- "For information about your Maximo IT License, see <Orange><u>https://ibm.biz/MAXIT81-License</u></Orange>",
121
- "To continue with the installation, you must accept these additional license terms"
122
- ])
123
-
124
- if not self.yesOrNo("Do you accept the license terms"):
125
- exit(1)
75
+ # Only ask to install Manage components if this is a full Manage installation
76
+ # If this is a Manage Foundation installation, leave mas_appws_components blank
77
+ if self.isManageFoundation:
78
+ self.params["mas_appws_components"] = ""
79
+ else:
80
+ self.printH2(f"Maximo {self.manageAppName} Components")
81
+ self.printDescription([f"The default configuration will install {self.manageAppName} with Health enabled, alternatively choose exactly what industry solutions and add-ons will be configured"])
82
+
83
+ self.params["mas_appws_components"] = "base=latest,health=latest"
84
+ if self.yesOrNo("Select components to enable"):
85
+ self.params["mas_appws_components"] = "base=latest"
86
+ if self.yesOrNo(" - Asset Configuration Manager"):
87
+ self.params["mas_appws_components"] += ",acm=latest"
88
+ if self.yesOrNo(" - Aviation"):
89
+ self.params["mas_appws_components"] += ",aviation=latest"
90
+ if self.yesOrNo(" - Civil Infrastructure"):
91
+ self.params["mas_appws_components"] += ",civil=latest"
92
+ if self.yesOrNo(" - Envizi"):
93
+ self.params["mas_appws_components"] += ",envizi=latest"
94
+ if self.yesOrNo(" - Health"):
95
+ self.params["mas_appws_components"] += ",health=latest"
96
+ if self.yesOrNo(" - Health, Safety and Environment"):
97
+ self.params["mas_appws_components"] += ",hse=latest"
98
+ if self.yesOrNo(" - Maximo IT"):
99
+ self.params["mas_appws_components"] += ",icd=latest"
100
+ if self.yesOrNo(" - Nuclear"):
101
+ self.params["mas_appws_components"] += ",nuclear=latest"
102
+ if self.yesOrNo(" - Oil & Gas"):
103
+ self.params["mas_appws_components"] += ",oilandgas=latest"
104
+ if self.yesOrNo(" - Connector for Oracle Applications"):
105
+ self.params["mas_appws_components"] += ",oracleadapter=latest"
106
+ if self.yesOrNo(" - Connector for SAP Application"):
107
+ self.params["mas_appws_components"] += ",sapadapter=latest"
108
+ if self.yesOrNo(" - Service Provider"):
109
+ self.params["mas_appws_components"] += ",serviceprovider=latest"
110
+ if self.yesOrNo(" - Spatial"):
111
+ self.params["mas_appws_components"] += ",spatial=latest"
112
+ if self.yesOrNo(" - Strategize"):
113
+ self.params["mas_appws_components"] += ",strategize=latest"
114
+ if self.yesOrNo(" - Transportation"):
115
+ self.params["mas_appws_components"] += ",transportation=latest"
116
+ if self.yesOrNo(" - Tririga"):
117
+ self.params["mas_appws_components"] += ",tririga=latest"
118
+ if self.yesOrNo(" - Utilities"):
119
+ self.params["mas_appws_components"] += ",utilities=latest"
120
+ if self.yesOrNo(" - Workday Applications"):
121
+ self.params["mas_appws_components"] += ",workday=latest"
122
+ if self.yesOrNo(" - AIP"):
123
+ self.params["mas_appws_components"] += ",aip=latest"
124
+ logger.debug(f"Generated mas_appws_components = {self.params['mas_appws_components']}")
125
+
126
+ if ",icd=" in self.params["mas_appws_components"]:
127
+ self.printH2("Maximo IT License Terms")
128
+ self.printDescription([
129
+ "For information about your Maximo IT License, see <Orange><u>https://ibm.biz/MAXIT81-License</u></Orange>",
130
+ "To continue with the installation, you must accept these additional license terms"
131
+ ])
132
+
133
+ if not self.yesOrNo("Do you accept the license terms"):
134
+ exit(1)
126
135
 
127
136
  def manageSettingsDatabase(self) -> None:
128
137
  if self.showAdvancedOptions:
129
- self.printH2("Maximo Manage Settings - Database")
130
- self.printDescription(["Customise the schema, tablespace, indexspace, and encryption settings used by Manage"])
138
+ self.printH2(f"Maximo {self.manageAppName} Settings - Database")
139
+ self.printDescription([f"Customise the schema, tablespace, indexspace, and encryption settings used by {self.manageAppName}"])
131
140
 
132
141
  if self.yesOrNo("Customize database settings"):
133
142
  self.promptForString("Schema", "mas_app_settings_db2_schema", default="maximo")
@@ -142,80 +151,83 @@ class ManageSettingsMixin():
142
151
  self.yesOrNo("Override database encryption secrets with provided keys", "mas_app_settings_override_encryption_secrets_flag")
143
152
 
144
153
  def manageSettingsServerBundleConfig(self) -> None:
145
- if self.showAdvancedOptions:
146
- self.printH2("Maximo Manage Settings - Server Bundles")
147
- self.printDescription([
148
- "Define how you want to configure Manage servers:",
149
- " - You can have one or multiple Manage servers distributing workload",
150
- " - Additionally, you can choose to include JMS server for messaging queues",
151
- "",
152
- "Configurations:",
153
- " 1. Deploy the 'all' server pod only (workload is concentrated in just one server pod but consumes less resource)",
154
- " 2. Deploy the 'all' and 'jms' bundle pods (workload is concentrated in just one server pod and includes jms server)"
155
- ])
156
-
157
- if not self.isSNO():
154
+ if not self.isManageFoundation:
155
+ if self.showAdvancedOptions:
156
+ self.printH2(f"Maximo {self.manageAppName} Settings - Server Bundles")
158
157
  self.printDescription([
159
- " 3. Deploy the 'mea', 'report', 'ui' and 'cron' bundle pods (workload is distributed across multiple server pods)",
160
- " 4. Deploy the 'mea', 'report', 'ui', 'cron' and 'jms' bundle pods (workload is distributed across multiple server pods and includes jms server)"
158
+ f"Define how you want to configure {self.manageAppName} servers:",
159
+ f" - You can have one or multiple {self.manageAppName} servers distributing workload",
160
+ " - Additionally, you can choose to include JMS server for messaging queues",
161
+ "",
162
+ "Configurations:",
163
+ " 1. Deploy the 'all' server pod only (workload is concentrated in just one server pod but consumes less resource)",
164
+ " 2. Deploy the 'all' and 'jms' bundle pods (workload is concentrated in just one server pod and includes jms server)"
161
165
  ])
162
166
 
163
- manageServerBundleSelection = self.promptForString("Select a server bundle configuration")
164
-
165
- if manageServerBundleSelection == "1":
166
- self.setParam("mas_app_settings_server_bundles_size", "dev")
167
- elif manageServerBundleSelection == "2":
168
- self.setParam("mas_app_settings_server_bundles_size", "snojms")
169
- self.setParam("mas_app_settings_persistent_volumes_flag", "true")
170
- elif manageServerBundleSelection == "3":
171
- self.setParam("mas_app_settings_server_bundles_size", "small")
172
- elif manageServerBundleSelection == "4":
173
- self.setParam("mas_app_settings_server_bundles_size", "jms")
174
- self.setParam("mas_app_settings_persistent_volumes_flag", "true")
167
+ if not self.isSNO():
168
+ self.printDescription([
169
+ " 3. Deploy the 'mea', 'report', 'ui' and 'cron' bundle pods (workload is distributed across multiple server pods)",
170
+ " 4. Deploy the 'mea', 'report', 'ui', 'cron' and 'jms' bundle pods (workload is distributed across multiple server pods and includes jms server)"
171
+ ])
172
+
173
+ manageServerBundleSelection = self.promptForString("Select a server bundle configuration")
174
+
175
+ if manageServerBundleSelection == "1":
176
+ self.setParam("mas_app_settings_server_bundles_size", "dev")
177
+ elif manageServerBundleSelection == "2":
178
+ self.setParam("mas_app_settings_server_bundles_size", "snojms")
179
+ self.setParam("mas_app_settings_persistent_volumes_flag", "true")
180
+ elif manageServerBundleSelection == "3":
181
+ self.setParam("mas_app_settings_server_bundles_size", "small")
182
+ elif manageServerBundleSelection == "4":
183
+ self.setParam("mas_app_settings_server_bundles_size", "jms")
184
+ self.setParam("mas_app_settings_persistent_volumes_flag", "true")
185
+ else:
186
+ self.fatalError("Invalid selection")
175
187
  else:
176
- self.fatalError("Invalid selection")
177
- else:
178
- self.setParam("mas_app_settings_server_bundles_size", "dev")
188
+ self.setParam("mas_app_settings_server_bundles_size", "dev")
179
189
 
180
190
  def manageSettingsJMS(self) -> None:
181
191
  if self.getParam("mas_app_settings_server_bundles_size") in ["jms", "snojms"]:
182
192
  self.printDescription([
183
- "Only Manage JMS sequential queues (sqin and sqout) are enabled by default.",
193
+ f"Only {self.manageAppName} JMS sequential queues (sqin and sqout) are enabled by default.",
184
194
  "However, you can enable both sequential (sqin and sqout) and continuous queues (cqin and cqout)"
185
195
  ])
186
196
 
187
- self.yesOrNo("Enable both Manage JMS sequential and continuous queues", "mas_app_settings_default_jms")
197
+ self.yesOrNo(f"Enable both {self.manageAppName} JMS sequential and continuous queues", "mas_app_settings_default_jms")
188
198
 
189
199
  def manageSettingsCustomizationArchive(self) -> None:
190
- self.printH2("Maximo Manage Settings - Customization")
191
- self.printDescription([
192
- "Provide a customization archive to be used in the Manage build process"
193
- ])
200
+ # Only ask about customization archive in full Manage installation
201
+ if not self.isManageFoundation:
202
+ self.printH2(f"Maximo {self.manageAppName} Settings - Customization")
203
+ self.printDescription([
204
+ f"Provide a customization archive to be used in the {self.manageAppName} build process"
205
+ ])
194
206
 
195
- if self.yesOrNo("Include customization archive"):
196
- self.promptForString("Customization archive name", "mas_app_settings_customization_archive_name")
197
- self.promptForString("Customization archive path/url", "mas_app_settings_customization_archive_url")
198
- if self.yesOrNo("Provide authentication to access customization archive URL"):
199
- self.promptForString("Username", "mas_app_settings_customization_archive_username")
200
- self.promptForString("Password", "mas_app_settings_customization_archive_password", isPassword=True)
207
+ if self.yesOrNo("Include customization archive"):
208
+ self.promptForString("Customization archive name", "mas_app_settings_customization_archive_name")
209
+ self.promptForString("Customization archive path/url", "mas_app_settings_customization_archive_url")
210
+ if self.yesOrNo("Provide authentication to access customization archive URL"):
211
+ self.promptForString("Username", "mas_app_settings_customization_archive_username")
212
+ self.promptForString("Password", "mas_app_settings_customization_archive_password", isPassword=True) # pragma: allowlist secret
201
213
 
202
214
  def manageSettingsDemodata(self) -> None:
203
215
  self.yesOrNo("Create demo data", "mas_app_settings_demodata")
204
216
 
205
217
  def manageSettingsTimezone(self) -> None:
206
- self.promptForString("Manage server timezone", "mas_app_settings_server_timezone", default="GMT")
218
+ self.promptForString(f"{self.manageAppName} server timezone", "mas_app_settings_server_timezone", default="GMT")
207
219
  # Set Manage dedicated Db2 instance timezone to be same as Manage server timezone
208
220
  self.setParam("db2_timezone", self.getParam("mas_app_settings_server_timezone"))
209
221
 
210
222
  def manageSettingsLanguages(self) -> None:
211
- self.printH2("Maximo Manage Settings - Languages")
223
+ self.printH2(f"Maximo {self.manageAppName} Settings - Languages")
212
224
  self.printDescription([
213
- "Define the base language for Maximo Manage"
225
+ f"Define the base language for Maximo {self.manageAppName}"
214
226
  ])
215
227
  self.promptForString("Base language", "mas_app_settings_base_lang", default="EN")
216
228
 
217
229
  self.printDescription([
218
- "Define the additional languages to be configured in Maximo Manage. provide a comma-separated list of supported languages codes, for example: 'JA,DE,AR'",
230
+ f"Define the additional languages to be configured in Maximo {self.manageAppName}. provide a comma-separated list of supported languages codes, for example: 'JA,DE,AR'",
219
231
  "A complete list of available language codes is available online:",
220
232
  " <Orange><u>https://www.ibm.com/docs/en/mas-cd/mhmpmh-and-p-u/continuous-delivery?topic=deploy-language-support</u></Orange>"
221
233
  ])
@@ -225,7 +237,7 @@ class ManageSettingsMixin():
225
237
  def manageSettingsCP4D(self) -> None:
226
238
  if self.getParam("mas_app_channel_manage") in ["8.7.x", "9.0.x"] and self.showAdvancedOptions:
227
239
  self.printDescription([
228
- "Integration with Cognos Analytics provides additional support for reporting features in Maximo Manage, for more information refer to the documentation online: ",
240
+ f"Integration with Cognos Analytics provides additional support for reporting features in Maximo {self.manageAppName}, for more information refer to the documentation online: ",
229
241
  " - <Orange><u>https://ibm.biz/BdMuxs</u></Orange>"
230
242
  ])
231
243
  self.yesOrNo("Enable integration with Cognos Analytics", "cpd_install_cognos")
@@ -235,44 +247,27 @@ class ManageSettingsMixin():
235
247
  self.configCP4D()
236
248
 
237
249
  def manageSettingsOther(self) -> None:
238
- self.printH2("Maximo Manage Settings - Other")
239
- self.printDescription([
240
- "Configure additional settings:",
241
- " - Demo data",
242
- " - Base and additional languages",
243
- " - Server timezone",
244
- " - Cognos integration (install Cloud Pak for Data)",
245
- " - Watson Studio Local integration (install Cloud Pak for Data)"
246
- ])
247
-
248
- if self.yesOrNo("Configure Additional Settings"):
249
- self.manageSettingsDemodata()
250
- self.manageSettingsTimezone()
251
- self.manageSettingsLanguages()
252
- self.manageSettingsCP4D()
253
-
254
- def aibrokerSettings(self) -> None:
255
- if self.installAiBroker:
256
- self.printH2("Maximo AI Broker Settings - Storage, WatsonX, MariaDB details")
257
- self.printDescription(["Customise AI Broker details"])
258
- self.promptForString("Storage provider", "mas_aibroker_storage_provider")
259
- self.promptForString("Storage access key", "mas_aibroker_storage_accesskey")
260
- self.promptForString("Storage secret key", "mas_aibroker_storage_secretkey")
261
- self.promptForString("Storage host", "mas_aibroker_storage_host")
262
- self.promptForString("Storage port", "mas_aibroker_storage_port")
263
- self.promptForString("Storage ssl", "mas_aibroker_storage_ssl")
264
- self.promptForString("Storage region", "mas_aibroker_storage_region")
265
- self.promptForString("Storage pipelines bucket", "mas_aibroker_storage_pipelines_bucket")
266
- self.promptForString("Storage tenants bucket", "mas_aibroker_storage_tenants_bucket")
267
- self.promptForString("Storage templates bucket", "mas_aibroker_storage_templates_bucket")
268
-
269
- self.promptForString("Watsonxai api key", "mas_aibroker_watsonxai_apikey")
270
- self.promptForString("Watsonxai machine learning url", "mas_aibroker_watsonxai_url")
271
- self.promptForString("Watsonxai project id", "mas_aibroker_watsonxai_project_id")
272
-
273
- self.promptForString("Database host", "mas_aibroker_db_host")
274
- self.promptForString("Database port", "mas_aibroker_db_port")
275
- self.promptForString("Database user", "mas_aibroker_db_user")
276
- self.promptForString("Database name", "mas_aibroker_db_database")
277
- self.promptForString("Database Secretname", "mas_aibroker_db_secret_name")
278
- self.promptForString("Database password", "mas_aibroker_db_secret_value")
250
+ self.printH2(f"Maximo {self.manageAppName} Settings - Other")
251
+ if self.isManageFoundation:
252
+ self.printDescription([
253
+ "Configure additional settings:",
254
+ " - Base and additional languages",
255
+ " - Server timezone"
256
+ ])
257
+ if self.yesOrNo("Configure Additional Settings"):
258
+ self.manageSettingsTimezone()
259
+ self.manageSettingsLanguages()
260
+ else:
261
+ self.printDescription([
262
+ "Configure additional settings:",
263
+ " - Demo data",
264
+ " - Base and additional languages",
265
+ " - Server timezone",
266
+ " - Cognos integration (install Cloud Pak for Data)",
267
+ " - Watson Studio Local integration (install Cloud Pak for Data)"
268
+ ])
269
+ if self.yesOrNo("Configure Additional Settings"):
270
+ self.manageSettingsDemodata()
271
+ self.manageSettingsTimezone()
272
+ self.manageSettingsLanguages()
273
+ self.manageSettingsCP4D()
@@ -19,7 +19,7 @@ class MongoDbSettingsMixin():
19
19
  "The installer can setup mongoce in your OpenShift cluster (available only for amd64) or you may choose to configure MAS to use an existing mongodb"
20
20
  ])
21
21
 
22
- if self.architecture != "s390x" and self.yesOrNo("Create MongoDb cluster using MongoDb Community Edition Operator"):
22
+ if (self.architecture != "s390x" and self.architecture != "ppc64le") and self.yesOrNo("Create MongoDb cluster using MongoDb Community Edition Operator"):
23
23
  if self.showAdvancedOptions:
24
24
  self.promptForString("MongoDb namespace", "mongodb_namespace", default="mongoce")
25
25
  else:
@@ -8,8 +8,6 @@
8
8
  #
9
9
  # *****************************************************************************
10
10
 
11
- from mas.devops.mas import isAirgapInstall
12
-
13
11
 
14
12
  class TurbonomicSettingsMixin():
15
13
 
@@ -21,7 +19,7 @@ class TurbonomicSettingsMixin():
21
19
  " - Learn more: <Orange><u>https://www.ibm.com/products/turbonomic</u></Orange>"
22
20
  ])
23
21
 
24
- if isAirgapInstall(self.dynamicClient):
22
+ if self.isAirgap():
25
23
  self.printHighlight("The Turbonomic Kubernetes Operator does not support disconnected installation at this time")
26
24
  elif self.yesOrNo("Configure IBM Turbonomic integration"):
27
25
  self.promptForString("Turbonomic Target Name", "turbonomic_target_name")