mas-cli 11.4.0__py3-none-any.whl → 11.6.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.
- mas/cli/__init__.py +1 -1
- mas/cli/cli.py +7 -8
- mas/cli/displayMixins.py +18 -14
- mas/cli/gencfg.py +3 -2
- mas/cli/install/__init__.py +1 -1
- mas/cli/install/app.py +96 -46
- mas/cli/install/argBuilder.py +170 -159
- mas/cli/install/argParser.py +194 -2
- mas/cli/install/settings/__init__.py +5 -4
- mas/cli/install/settings/additionalConfigs.py +27 -26
- mas/cli/install/settings/db2Settings.py +2 -2
- mas/cli/install/settings/kafkaSettings.py +1 -0
- mas/cli/install/settings/manageSettings.py +62 -19
- mas/cli/install/settings/turbonomicSettings.py +1 -0
- mas/cli/install/summarizer.py +36 -9
- mas/cli/templates/ibm-mas-tekton.yaml +1920 -360
- mas/cli/uninstall/__init__.py +1 -1
- mas/cli/uninstall/app.py +15 -14
- mas/cli/uninstall/argParser.py +1 -1
- mas/cli/update/__init__.py +1 -1
- mas/cli/update/app.py +39 -39
- mas/cli/update/argParser.py +1 -1
- mas/cli/upgrade/__init__.py +1 -1
- mas/cli/upgrade/app.py +8 -7
- mas/cli/upgrade/argParser.py +1 -1
- {mas_cli-11.4.0.data → mas_cli-11.6.0.data}/scripts/mas-cli +8 -6
- {mas_cli-11.4.0.dist-info → mas_cli-11.6.0.dist-info}/METADATA +2 -2
- {mas_cli-11.4.0.dist-info → mas_cli-11.6.0.dist-info}/RECORD +30 -30
- {mas_cli-11.4.0.dist-info → mas_cli-11.6.0.dist-info}/WHEEL +1 -1
- {mas_cli-11.4.0.dist-info → mas_cli-11.6.0.dist-info}/top_level.txt +0 -0
mas/cli/install/argBuilder.py
CHANGED
|
@@ -12,6 +12,7 @@ import logging
|
|
|
12
12
|
|
|
13
13
|
logger = logging.getLogger(__name__)
|
|
14
14
|
|
|
15
|
+
|
|
15
16
|
class installArgBuilderMixin():
|
|
16
17
|
def buildCommand(self) -> str:
|
|
17
18
|
# MAS Catalog Selection & Entitlement
|
|
@@ -94,8 +95,16 @@ class installArgBuilderMixin():
|
|
|
94
95
|
if self.getParam('mas_trust_default_cas') == "false":
|
|
95
96
|
command += f" --disable-ca-trust{newline}"
|
|
96
97
|
|
|
97
|
-
if self.getParam('mas_manual_cert_mgmt')
|
|
98
|
-
command += f" --manual-certificates \"{self.
|
|
98
|
+
if self.getParam('mas_manual_cert_mgmt') is True:
|
|
99
|
+
command += f" --manual-certificates \"{self.manualCertsDir}\"{newline}"
|
|
100
|
+
|
|
101
|
+
if self.getParam('mas_domain') is True:
|
|
102
|
+
command += f" --domain \"{self.getParam('mas_domain')}\"{newline}"
|
|
103
|
+
|
|
104
|
+
if self.getParam('--dns-provider') == "cis":
|
|
105
|
+
command += f" --dns-provider cis --cis-apikey \"{self.getParam('cis_apikey')}"
|
|
106
|
+
command += f" --cis-subdomain \"{self.getParam('cis_subdomain')}"
|
|
107
|
+
command += f" --cis-crn \"{self.getParam('cis_crn')}\"{newline}"
|
|
99
108
|
|
|
100
109
|
if self.getParam('mas_enable_walkme') == "false":
|
|
101
110
|
command += f" --disable-walkme{newline}"
|
|
@@ -201,170 +210,172 @@ class installArgBuilderMixin():
|
|
|
201
210
|
if self.getParam('mas_app_settings_server_timezone') != "":
|
|
202
211
|
command += f" --manage-server-timezone \"{self.getParam('mas_app_settings_server_timezone')}\"{newline}"
|
|
203
212
|
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
if self.getParam('kafka_username') != "":
|
|
273
|
-
command += f" --kafka-username \"{self.getParam('kafka_username')}\"{newline}"
|
|
274
|
-
if self.getParam('kafka_password') != "":
|
|
275
|
-
command += f" --kafka-password $KAFKA_PASSWORD{newline}"
|
|
276
|
-
|
|
277
|
-
# Kafka - Strimzi & AMQ Streams
|
|
278
|
-
# -----------------------------------------------------------------------------
|
|
279
|
-
if self.getParam('kafka_namespace') != "":
|
|
280
|
-
command += f" --kafka-namespace \"{self.getParam('kafka_namespace')}\"{newline}"
|
|
281
|
-
if self.getParam('kafka_version') != "":
|
|
282
|
-
command += f" --kafka-version \"{self.getParam('kafka_version')}\"{newline}"
|
|
283
|
-
|
|
284
|
-
# Kafka - MSK
|
|
285
|
-
# -----------------------------------------------------------------------------
|
|
286
|
-
if self.getParam('aws_msk_instance_type') != "":
|
|
287
|
-
command += f" --msk-instance-type \"{self.getParam('aws_msk_instance_type')}\""
|
|
288
|
-
command += f" --msk-instance-nodes \"{self.getParam('aws_msk_instance_nodes')}\""
|
|
289
|
-
command += f" --msk-instance-volume-size \"{self.getParam('aws_msk_instance_volume_size')}\"{newline}"
|
|
290
|
-
|
|
291
|
-
command += f" --msk-cidr-az1 \"{self.getParam('aws_msk_cidr_az1')}\""
|
|
292
|
-
command += f" --msk-cidr-az2 \"{self.getParam('aws_msk_cidr_az1')}\""
|
|
293
|
-
command += f" --msk-cidr-az3 \"{self.getParam('aws_msk_cidr_az1')}\"{newline}"
|
|
294
|
-
|
|
295
|
-
command += f" --msk-cidr-egress \"{self.getParam('aws_msk_egress_cidr')}\""
|
|
296
|
-
command += f" --msk-cidr-ingress \"{self.getParam('aws_msk_ingress_cidr')}\"{newline}"
|
|
297
|
-
|
|
298
|
-
# Kafka - Event Streams
|
|
299
|
-
# -----------------------------------------------------------------------------
|
|
300
|
-
if self.getParam('eventstreams_instance_name') != "":
|
|
301
|
-
command += f" --eventstreams-resource-group \"{self.getParam('eventstreams_resource_group')}\""
|
|
302
|
-
command += f" --eventstreams-instance-name \"{self.getParam('eventstreams_instance_name')}\""
|
|
303
|
-
command += f" --eventstreams-instance-location \"{self.getParam('eventstreams_instance_location')}\"{newline}"
|
|
304
|
-
|
|
305
|
-
# COS
|
|
306
|
-
# -----------------------------------------------------------------------------
|
|
307
|
-
if self.getParam('cos_type') != "":
|
|
308
|
-
command += f" --cos \"{self.getParam('cos_type')}\""
|
|
309
|
-
if self.getParam('cos_resourcegroup') != "":
|
|
310
|
-
command += f" --cos-resourcegroup \"{self.getParam('cos_resourcegroup')}\""
|
|
311
|
-
command += newline
|
|
213
|
+
# IBM Cloud Pak for Data
|
|
214
|
+
# -----------------------------------------------------------------------------
|
|
215
|
+
if self.getParam('cpd_product_version') != "":
|
|
216
|
+
command += f" --cp4d-version \"{self.getParam('cpd_product_version')}\""
|
|
217
|
+
if self.getParam('cpd_install_spss') == "install":
|
|
218
|
+
command += " --cp4d-install-spss"
|
|
219
|
+
if self.getParam('cpd_install_openscale') == "install":
|
|
220
|
+
command += " --cp4d-install-openscal"
|
|
221
|
+
if self.getParam('cpd_install_cognos') == "install":
|
|
222
|
+
command += " --cp4d-install-cognos"
|
|
223
|
+
command += newline
|
|
224
|
+
|
|
225
|
+
# IBM Db2 Universal Operator
|
|
226
|
+
# -----------------------------------------------------------------------------
|
|
227
|
+
if self.getParam('db2_system') == "install" or self.getParam('db2_manage') == "install":
|
|
228
|
+
if self.getParam('db2_system') == "install":
|
|
229
|
+
command += f" --db2-system{newline}"
|
|
230
|
+
if self.getParam('db2_manage') == "install":
|
|
231
|
+
command += f" --db2-manage{newline}"
|
|
232
|
+
|
|
233
|
+
if self.getParam('db2_channel') != "":
|
|
234
|
+
command += f" --db2-channel \"{self.getParam('db2_channel')}\"{newline}"
|
|
235
|
+
if self.getParam('db2_namespace') != "":
|
|
236
|
+
command += f" --db2-namespace \"{self.getParam('db2_namespace')}\"{newline}"
|
|
237
|
+
|
|
238
|
+
if self.getParam('db2_type') != "":
|
|
239
|
+
command += f" --db2-type \"{self.getParam('db2_type')}\"{newline}"
|
|
240
|
+
if self.getParam('db2_timezone') != "":
|
|
241
|
+
command += f" --db2-timezone \"{self.getParam('db2_timezone')}\"{newline}"
|
|
242
|
+
|
|
243
|
+
if self.getParam('db2_affinity_key') != "":
|
|
244
|
+
command += f" --db2-affinity-key \"{self.getParam('db2_affinity_key')}\"{newline}"
|
|
245
|
+
if self.getParam('db2_affinity_value') != "":
|
|
246
|
+
command += f" --db2-affinity_value \"{self.getParam('db2_affinity_value')}\"{newline}"
|
|
247
|
+
|
|
248
|
+
if self.getParam('db2_tolerate_key') != "":
|
|
249
|
+
command += f" --db2-tolerate-key \"{self.getParam('db2_tolerate_key')}\"{newline}"
|
|
250
|
+
if self.getParam('db2_tolerate_value') != "":
|
|
251
|
+
command += f" --db2-tolerate-value \"{self.getParam('db2_tolerate_value')}\"{newline}"
|
|
252
|
+
if self.getParam('db2_tolerate_effect') != "":
|
|
253
|
+
command += f" --db2-tolerate-effect \"{self.getParam('db2_tolerate_effect')}\"{newline}"
|
|
254
|
+
|
|
255
|
+
if self.getParam('db2_cpu_requests') != "":
|
|
256
|
+
command += f" --db2-cpu-requests \"{self.getParam('db2_cpu_requests')}\"{newline}"
|
|
257
|
+
if self.getParam('db2_cpu_limits') != "":
|
|
258
|
+
command += f" --db2-cpu-limits \"{self.getParam('db2_cpu_limits')}\"{newline}"
|
|
259
|
+
|
|
260
|
+
if self.getParam('db2_memory_requests') != "":
|
|
261
|
+
command += f" --db2-memory-requests \"{self.getParam('db2_memory_requests')}\"{newline}"
|
|
262
|
+
if self.getParam('db2_memory_limits') != "":
|
|
263
|
+
command += f" --db2-memory-limits \"{self.getParam('db2_memory_limits')}\"{newline}"
|
|
264
|
+
|
|
265
|
+
if self.getParam('db2_backup_storage_size') != "":
|
|
266
|
+
command += f" --db2-backup-storage \"{self.getParam('db2_backup_storage_size')}\"{newline}"
|
|
267
|
+
if self.getParam('db2_data_storage_size') != "":
|
|
268
|
+
command += f" --db2-data-storage \"{self.getParam('db2_data_storage_size')}\"{newline}"
|
|
269
|
+
if self.getParam('db2_logs_storage_size') != "":
|
|
270
|
+
command += f" --db2-logs-storage \"{self.getParam('db2_logs_storage_size')}\"{newline}"
|
|
271
|
+
if self.getParam('db2_meta_storage_size') != "":
|
|
272
|
+
command += f" --db2-meta-storage \"{self.getParam('db2_meta_storage_size')}\"{newline}"
|
|
273
|
+
if self.getParam('db2_temp_storage_size') != "":
|
|
274
|
+
command += f" --db2-temp-storage \"{self.getParam('db2_temp_storage_size')}\"{newline}"
|
|
275
|
+
|
|
276
|
+
# Kafka - Common
|
|
277
|
+
# -----------------------------------------------------------------------------
|
|
278
|
+
if self.getParam('kafka_provider') != "":
|
|
279
|
+
command += f" --kafka-provider \"{self.getParam('kafka_provider')}\"{newline}"
|
|
312
280
|
|
|
313
|
-
|
|
281
|
+
if self.getParam('kafka_username') != "":
|
|
282
|
+
command += f" --kafka-username \"{self.getParam('kafka_username')}\"{newline}"
|
|
283
|
+
if self.getParam('kafka_password') != "":
|
|
284
|
+
command += f" --kafka-password $KAFKA_PASSWORD{newline}"
|
|
285
|
+
|
|
286
|
+
# Kafka - Strimzi & AMQ Streams
|
|
314
287
|
# -----------------------------------------------------------------------------
|
|
315
|
-
if self.getParam('
|
|
316
|
-
command += f" --
|
|
317
|
-
|
|
318
|
-
command += f" --
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
# Cloud Providers
|
|
288
|
+
if self.getParam('kafka_namespace') != "":
|
|
289
|
+
command += f" --kafka-namespace \"{self.getParam('kafka_namespace')}\"{newline}"
|
|
290
|
+
if self.getParam('kafka_version') != "":
|
|
291
|
+
command += f" --kafka-version \"{self.getParam('kafka_version')}\"{newline}"
|
|
292
|
+
|
|
293
|
+
# Kafka - MSK
|
|
323
294
|
# -----------------------------------------------------------------------------
|
|
324
|
-
if self.getParam('
|
|
325
|
-
command += f" --
|
|
295
|
+
if self.getParam('aws_msk_instance_type') != "":
|
|
296
|
+
command += f" --msk-instance-type \"{self.getParam('aws_msk_instance_type')}\""
|
|
297
|
+
command += f" --msk-instance-nodes \"{self.getParam('aws_msk_instance_nodes')}\""
|
|
298
|
+
command += f" --msk-instance-volume-size \"{self.getParam('aws_msk_instance_volume_size')}\"{newline}"
|
|
326
299
|
|
|
327
|
-
|
|
328
|
-
command += f"
|
|
329
|
-
|
|
330
|
-
command += f" --secret-access-key $SECRET_ACCESS_KEY{newline}"
|
|
331
|
-
command += f" --aws-region \"{self.getParam('aws_region')}\""
|
|
332
|
-
command += f" --aws-vpc-id \"{self.getParam('aws_vpc_id')}\""
|
|
300
|
+
command += f" --msk-cidr-az1 \"{self.getParam('aws_msk_cidr_az1')}\""
|
|
301
|
+
command += f" --msk-cidr-az2 \"{self.getParam('aws_msk_cidr_az1')}\""
|
|
302
|
+
command += f" --msk-cidr-az3 \"{self.getParam('aws_msk_cidr_az1')}\"{newline}"
|
|
333
303
|
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
if self.getParam('artifactory_username') != "":
|
|
337
|
-
command += f" --artifactory-username $ARTIFACTORY_USERNAME --artifactory-token $ARTIFACTORY_TOKEN{newline}"
|
|
304
|
+
command += f" --msk-cidr-egress \"{self.getParam('aws_msk_egress_cidr')}\""
|
|
305
|
+
command += f" --msk-cidr-ingress \"{self.getParam('aws_msk_ingress_cidr')}\"{newline}"
|
|
338
306
|
|
|
339
|
-
#
|
|
340
|
-
# -----------------------------------------------------------------------------
|
|
341
|
-
if self.getParam('approval_core') != "":
|
|
342
|
-
command += f" --approval-core \"{self.getParam('approval_core')}\"{newline}"
|
|
343
|
-
if self.getParam('approval_assist') != "":
|
|
344
|
-
command += f" --approval-assist \"{self.getParam('approval_assist')}\"{newline}"
|
|
345
|
-
if self.getParam('approval_iot') != "":
|
|
346
|
-
command += f" --approval-iot \"{self.getParam('approval_iot')}\"{newline}"
|
|
347
|
-
if self.getParam('approval_manage') != "":
|
|
348
|
-
command += f" --approval-manage \"{self.getParam('approval_manage')}\"{newline}"
|
|
349
|
-
if self.getParam('approval_monitor') != "":
|
|
350
|
-
command += f" --approval-monitor \"{self.getParam('approval_monitor')}\"{newline}"
|
|
351
|
-
if self.getParam('approval_optimizer') != "":
|
|
352
|
-
command += f" --approval-optimizer \"{self.getParam('approval_optimizer')}\"{newline}"
|
|
353
|
-
if self.getParam('approval_predict') != "":
|
|
354
|
-
command += f" --approval-predict \"{self.getParam('approval_predict')}\"{newline}"
|
|
355
|
-
if self.getParam('approval_visualinspection') != "":
|
|
356
|
-
command += f" --approval-visualinspection \"{self.getParam('approval_visualinspection')}\"{newline}"
|
|
357
|
-
|
|
358
|
-
# More Options
|
|
307
|
+
# Kafka - Event Streams
|
|
359
308
|
# -----------------------------------------------------------------------------
|
|
360
|
-
if self.
|
|
361
|
-
command += f" --
|
|
362
|
-
|
|
363
|
-
command += f"
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
309
|
+
if self.getParam('eventstreams_instance_name') != "":
|
|
310
|
+
command += f" --eventstreams-resource-group \"{self.getParam('eventstreams_resource_group')}\""
|
|
311
|
+
command += f" --eventstreams-instance-name \"{self.getParam('eventstreams_instance_name')}\""
|
|
312
|
+
command += f" --eventstreams-instance-location \"{self.getParam('eventstreams_instance_location')}\"{newline}"
|
|
313
|
+
|
|
314
|
+
# COS
|
|
315
|
+
# -----------------------------------------------------------------------------
|
|
316
|
+
if self.getParam('cos_type') != "":
|
|
317
|
+
command += f" --cos \"{self.getParam('cos_type')}\""
|
|
318
|
+
if self.getParam('ibmcos_resourcegroup') != "":
|
|
319
|
+
command += f" --cos-resourcegroup \"{self.getParam('cos_resourcegroup')}\""
|
|
320
|
+
command += newline
|
|
321
|
+
|
|
322
|
+
# Turbonomic Integration
|
|
323
|
+
# -----------------------------------------------------------------------------
|
|
324
|
+
if self.getParam('turbonomic_target_name') != "":
|
|
325
|
+
command += f" --turbonomic-name \"{self.getParam('turbonomic_target_name')}\""
|
|
326
|
+
command += f" --turbonomic-url \"{self.getParam('turbonomic_server_url')}\""
|
|
327
|
+
command += f" --turbonomic-version \"{self.getParam('turbonomic_server_version')}\""
|
|
328
|
+
command += f" --turbonomic-username \"{self.getParam('turbonomic_username')}\""
|
|
329
|
+
command += f" --turbonomic-password \"{self.getParam('turbonomic_password')}\"{newline}"
|
|
330
|
+
|
|
331
|
+
# Cloud Providers
|
|
332
|
+
# -----------------------------------------------------------------------------
|
|
333
|
+
if self.getParam('ibmcloud_apikey') != "":
|
|
334
|
+
command += f" --ibmcloud-apikey $IBMCLOUD_APIKEY{newline}"
|
|
335
|
+
|
|
336
|
+
if self.getParam('aws_access_key_id') != "":
|
|
337
|
+
command += f" --aws-access-key-id $AWS_ACCESS_KEY_ID{newline}"
|
|
338
|
+
if self.getParam('secret_access_key') != "":
|
|
339
|
+
command += f" --secret-access-key $SECRET_ACCESS_KEY{newline}"
|
|
340
|
+
command += f" --aws-region \"{self.getParam('aws_region')}\""
|
|
341
|
+
command += f" --aws-vpc-id \"{self.getParam('aws_vpc_id')}\""
|
|
342
|
+
|
|
343
|
+
# Development Mode
|
|
344
|
+
# -----------------------------------------------------------------------------
|
|
345
|
+
if self.getParam('artifactory_username') != "":
|
|
346
|
+
command += f" --artifactory-username $ARTIFACTORY_USERNAME --artifactory-token $ARTIFACTORY_TOKEN{newline}"
|
|
347
|
+
|
|
348
|
+
# Approvals
|
|
349
|
+
# -----------------------------------------------------------------------------
|
|
350
|
+
if self.getParam('approval_core') != "":
|
|
351
|
+
command += f" --approval-core \"{self.getParam('approval_core')}\"{newline}"
|
|
352
|
+
if self.getParam('approval_assist') != "":
|
|
353
|
+
command += f" --approval-assist \"{self.getParam('approval_assist')}\"{newline}"
|
|
354
|
+
if self.getParam('approval_iot') != "":
|
|
355
|
+
command += f" --approval-iot \"{self.getParam('approval_iot')}\"{newline}"
|
|
356
|
+
if self.getParam('approval_manage') != "":
|
|
357
|
+
command += f" --approval-manage \"{self.getParam('approval_manage')}\"{newline}"
|
|
358
|
+
if self.getParam('approval_monitor') != "":
|
|
359
|
+
command += f" --approval-monitor \"{self.getParam('approval_monitor')}\"{newline}"
|
|
360
|
+
if self.getParam('approval_optimizer') != "":
|
|
361
|
+
command += f" --approval-optimizer \"{self.getParam('approval_optimizer')}\"{newline}"
|
|
362
|
+
if self.getParam('approval_predict') != "":
|
|
363
|
+
command += f" --approval-predict \"{self.getParam('approval_predict')}\"{newline}"
|
|
364
|
+
if self.getParam('approval_visualinspection') != "":
|
|
365
|
+
command += f" --approval-visualinspection \"{self.getParam('approval_visualinspection')}\"{newline}"
|
|
366
|
+
|
|
367
|
+
# More Options
|
|
368
|
+
# -----------------------------------------------------------------------------
|
|
369
|
+
if self.devMode:
|
|
370
|
+
command += f" --dev-mode{newline}"
|
|
371
|
+
if not self.waitForPVC:
|
|
372
|
+
command += f" --no-wait-for-pvc{newline}"
|
|
373
|
+
if self.getParam('skip_pre_check') is True:
|
|
374
|
+
command += f" --skip-pre-check{newline}"
|
|
375
|
+
if self.getParam('skip_grafana_install') is True:
|
|
376
|
+
command += f" --skip-grafana-install{newline}"
|
|
377
|
+
if self.getParam('image_pull_policy') != "":
|
|
378
|
+
command += f" --image-pull-policy {self.getParam('image_pull_policy')}{newline}"
|
|
368
379
|
|
|
369
380
|
command += " --accept-license --no-confirm"
|
|
370
381
|
return command
|
mas/cli/install/argParser.py
CHANGED
|
@@ -14,12 +14,14 @@ from os import path
|
|
|
14
14
|
from .. import __version__ as packageVersion
|
|
15
15
|
from ..cli import getHelpFormatter
|
|
16
16
|
|
|
17
|
+
|
|
17
18
|
def isValidFile(parser, arg) -> str:
|
|
18
19
|
if not path.exists(arg):
|
|
19
20
|
parser.error(f"Error: The file {arg} does not exist")
|
|
20
21
|
else:
|
|
21
22
|
return arg
|
|
22
23
|
|
|
24
|
+
|
|
23
25
|
installArgParser = argparse.ArgumentParser(
|
|
24
26
|
prog="mas install",
|
|
25
27
|
description="\n".join([
|
|
@@ -75,7 +77,7 @@ masArgGroup.add_argument(
|
|
|
75
77
|
required=False,
|
|
76
78
|
help="Subscription channel for the Core Platform"
|
|
77
79
|
)
|
|
78
|
-
# MAS Special characters
|
|
80
|
+
# MAS Special characters
|
|
79
81
|
# -----------------------------------------------------------------------------
|
|
80
82
|
masSpecialCharacters = installArgParser.add_argument_group("Mas Special Characters")
|
|
81
83
|
masSpecialCharacters.add_argument(
|
|
@@ -162,6 +164,13 @@ masAdvancedArgGroup.add_argument(
|
|
|
162
164
|
required=False,
|
|
163
165
|
help="Path to directory containing the certificates to be applied"
|
|
164
166
|
)
|
|
167
|
+
masAdvancedArgGroup.add_argument(
|
|
168
|
+
"--domain",
|
|
169
|
+
dest="mas_domain",
|
|
170
|
+
required=False,
|
|
171
|
+
help="Configure MAS with a custom domain"
|
|
172
|
+
)
|
|
173
|
+
|
|
165
174
|
masAdvancedArgGroup.add_argument(
|
|
166
175
|
"--disable-walkme",
|
|
167
176
|
dest="mas_enable_walkme",
|
|
@@ -171,6 +180,42 @@ masAdvancedArgGroup.add_argument(
|
|
|
171
180
|
const="false"
|
|
172
181
|
)
|
|
173
182
|
|
|
183
|
+
masAdvancedArgGroup.add_argument(
|
|
184
|
+
"--dns-provider",
|
|
185
|
+
dest="dns_provider",
|
|
186
|
+
required=False,
|
|
187
|
+
help="Enable Automatic DNS management (see DNS Configuration options)",
|
|
188
|
+
choices=["cloudflare", "cis", "route53"]
|
|
189
|
+
)
|
|
190
|
+
|
|
191
|
+
# DNS Configuration - IBM CIS
|
|
192
|
+
# -----------------------------------------------------------------------------
|
|
193
|
+
cisArgGroup = installArgParser.add_argument_group("DNS Configuration - CIS")
|
|
194
|
+
cisArgGroup.add_argument(
|
|
195
|
+
"--cis-email",
|
|
196
|
+
dest="cis_email",
|
|
197
|
+
required=False,
|
|
198
|
+
help="Required when DNS provider is CIS and you want to use a Let's Encrypt ClusterIssuer"
|
|
199
|
+
)
|
|
200
|
+
cisArgGroup.add_argument(
|
|
201
|
+
"--cis-apikey",
|
|
202
|
+
dest="cis_apikey",
|
|
203
|
+
required=False,
|
|
204
|
+
help="Required when DNS provider is CIS"
|
|
205
|
+
)
|
|
206
|
+
cisArgGroup.add_argument(
|
|
207
|
+
"--cis-crn",
|
|
208
|
+
dest="cis_crn",
|
|
209
|
+
required=False,
|
|
210
|
+
help="Required when DNS provider is CIS"
|
|
211
|
+
)
|
|
212
|
+
cisArgGroup.add_argument(
|
|
213
|
+
"--cis-subdomain",
|
|
214
|
+
dest="cis_subdomain",
|
|
215
|
+
required=False,
|
|
216
|
+
help="Optionally setup MAS instance as a subdomain under a multi-tenant CIS DNS record"
|
|
217
|
+
)
|
|
218
|
+
|
|
174
219
|
# Storage
|
|
175
220
|
# -----------------------------------------------------------------------------
|
|
176
221
|
storageArgGroup = installArgParser.add_argument_group("Storage")
|
|
@@ -242,7 +287,6 @@ mongoArgGroup.add_argument(
|
|
|
242
287
|
help=""
|
|
243
288
|
)
|
|
244
289
|
|
|
245
|
-
|
|
246
290
|
# OCP Configuration
|
|
247
291
|
# -----------------------------------------------------------------------------
|
|
248
292
|
ocpArgGroup = installArgParser.add_argument_group("OCP Configuration")
|
|
@@ -296,6 +340,147 @@ masAppsArgGroup.add_argument(
|
|
|
296
340
|
choices=["full", "limited"],
|
|
297
341
|
help="Install plan for Maximo Optimizer"
|
|
298
342
|
)
|
|
343
|
+
masAppsArgGroup.add_argument(
|
|
344
|
+
"--aibroker-channel",
|
|
345
|
+
required=False,
|
|
346
|
+
help="Subscription channel for Maximo Ai Broker"
|
|
347
|
+
)
|
|
348
|
+
|
|
349
|
+
# AI Broker
|
|
350
|
+
# -----------------------------------------------------------------------------
|
|
351
|
+
aibrokerArgGroup = installArgParser.add_argument_group("Maximo AI Broker")
|
|
352
|
+
aibrokerArgGroup.add_argument(
|
|
353
|
+
"--mas-aibroker-storage-provider",
|
|
354
|
+
dest="mas_aibroker_storage_provider",
|
|
355
|
+
required=False,
|
|
356
|
+
help="Customize Manage database encryption keys"
|
|
357
|
+
)
|
|
358
|
+
aibrokerArgGroup.add_argument(
|
|
359
|
+
"--mas-aibroker-storage-accesskey",
|
|
360
|
+
dest="mas_aibroker_storage_accesskey",
|
|
361
|
+
required=False,
|
|
362
|
+
help="Customize Manage database encryption keys"
|
|
363
|
+
)
|
|
364
|
+
aibrokerArgGroup.add_argument(
|
|
365
|
+
"--mas-aibroker-storage-secretkey",
|
|
366
|
+
dest="mas_aibroker_storage_secretkey",
|
|
367
|
+
required=False,
|
|
368
|
+
help="Customize Manage database encryption keys"
|
|
369
|
+
)
|
|
370
|
+
aibrokerArgGroup.add_argument(
|
|
371
|
+
"--mas-aibroker-storage-host",
|
|
372
|
+
dest="mas_aibroker_storage_host",
|
|
373
|
+
required=False,
|
|
374
|
+
help="Customize Manage database encryption keys"
|
|
375
|
+
)
|
|
376
|
+
aibrokerArgGroup.add_argument(
|
|
377
|
+
"--mas-aibroker-storage-port",
|
|
378
|
+
dest="mas_aibroker_storage_port",
|
|
379
|
+
required=False,
|
|
380
|
+
help="Customize Manage database encryption keys"
|
|
381
|
+
)
|
|
382
|
+
aibrokerArgGroup.add_argument(
|
|
383
|
+
"--mas-aibroker-storage-ssl",
|
|
384
|
+
dest="mas_aibroker_storage_ssl",
|
|
385
|
+
required=False,
|
|
386
|
+
help="Customize Manage database encryption keys"
|
|
387
|
+
)
|
|
388
|
+
aibrokerArgGroup.add_argument(
|
|
389
|
+
"--mas-aibroker-storage-region",
|
|
390
|
+
dest="mas_aibroker_storage_region",
|
|
391
|
+
required=False,
|
|
392
|
+
help="Customize Manage database encryption keys"
|
|
393
|
+
)
|
|
394
|
+
aibrokerArgGroup.add_argument(
|
|
395
|
+
"--mas-aibroker-storage-pipelines-bucket",
|
|
396
|
+
dest="mas_aibroker_storage_pipelines_bucket",
|
|
397
|
+
required=False,
|
|
398
|
+
help="Customize Manage database encryption keys"
|
|
399
|
+
)
|
|
400
|
+
aibrokerArgGroup.add_argument(
|
|
401
|
+
"--mas-aibroker-storage-tenants-bucket",
|
|
402
|
+
dest="mas_aibroker_storage_tenants_bucket",
|
|
403
|
+
required=False,
|
|
404
|
+
help="Customize Manage database encryption keys"
|
|
405
|
+
)
|
|
406
|
+
aibrokerArgGroup.add_argument(
|
|
407
|
+
"--mas-aibroker-storage-templates-bucket",
|
|
408
|
+
dest="mas_aibroker_storage_templates_bucket",
|
|
409
|
+
required=False,
|
|
410
|
+
help="Customize Manage database encryption keys"
|
|
411
|
+
)
|
|
412
|
+
aibrokerArgGroup.add_argument(
|
|
413
|
+
"--mas-aibroker-tenant-name",
|
|
414
|
+
dest="mas_aibroker_tenant_name",
|
|
415
|
+
required=False,
|
|
416
|
+
help="Customize Manage database encryption keys"
|
|
417
|
+
)
|
|
418
|
+
aibrokerArgGroup.add_argument(
|
|
419
|
+
"--mas-aibroker-watsonxai-apikey",
|
|
420
|
+
dest="mas_aibroker_watsonxai_apikey",
|
|
421
|
+
required=False,
|
|
422
|
+
help="Customize Manage database encryption keys"
|
|
423
|
+
)
|
|
424
|
+
aibrokerArgGroup.add_argument(
|
|
425
|
+
"--mas-aibroker-watsonxai-url",
|
|
426
|
+
dest="mas_aibroker_watsonxai_url",
|
|
427
|
+
required=False,
|
|
428
|
+
help="Customize Manage database encryption keys"
|
|
429
|
+
)
|
|
430
|
+
aibrokerArgGroup.add_argument(
|
|
431
|
+
"--mas-aibroker-watsonxai-project-id",
|
|
432
|
+
dest="mas_aibroker_watsonxai_project_id",
|
|
433
|
+
required=False,
|
|
434
|
+
help="Customize Manage database encryption keys"
|
|
435
|
+
)
|
|
436
|
+
aibrokerArgGroup.add_argument(
|
|
437
|
+
"--mas-aibroker-watsonx-action",
|
|
438
|
+
dest="mas_aibroker_watsonx_action",
|
|
439
|
+
required=False,
|
|
440
|
+
help="Customize Manage database encryption keys"
|
|
441
|
+
)
|
|
442
|
+
aibrokerArgGroup.add_argument(
|
|
443
|
+
"--mas-aibroker-db-host",
|
|
444
|
+
dest="mas_aibroker_db_host",
|
|
445
|
+
required=False,
|
|
446
|
+
help="Customize Manage database encryption keys"
|
|
447
|
+
)
|
|
448
|
+
aibrokerArgGroup.add_argument(
|
|
449
|
+
"--mas-aibroker-db-port",
|
|
450
|
+
dest="mas_aibroker_db_port",
|
|
451
|
+
required=False,
|
|
452
|
+
help="Customize Manage database encryption keys"
|
|
453
|
+
)
|
|
454
|
+
aibrokerArgGroup.add_argument(
|
|
455
|
+
"--mas-aibroker-db-user",
|
|
456
|
+
dest="mas_aibroker_db_user",
|
|
457
|
+
required=False,
|
|
458
|
+
help="Customize Manage database encryption keys"
|
|
459
|
+
)
|
|
460
|
+
aibrokerArgGroup.add_argument(
|
|
461
|
+
"--mas-aibroker-db-database",
|
|
462
|
+
dest="mas_aibroker_db_database",
|
|
463
|
+
required=False,
|
|
464
|
+
help="Customize Manage database encryption keys"
|
|
465
|
+
)
|
|
466
|
+
aibrokerArgGroup.add_argument(
|
|
467
|
+
"--mas-aibroker-db-secret-name",
|
|
468
|
+
dest="mas_aibroker_db_secret_name",
|
|
469
|
+
required=False,
|
|
470
|
+
help="Customize Manage database encryption keys"
|
|
471
|
+
)
|
|
472
|
+
aibrokerArgGroup.add_argument(
|
|
473
|
+
"--mas-aibroker-db-secret-key",
|
|
474
|
+
dest="mas_aibroker_db_secret_key",
|
|
475
|
+
required=False,
|
|
476
|
+
help="Customize Manage database encryption keys"
|
|
477
|
+
)
|
|
478
|
+
aibrokerArgGroup.add_argument(
|
|
479
|
+
"--mas-aibroker-db-secret-value",
|
|
480
|
+
dest="mas_aibroker_db_secret_value",
|
|
481
|
+
required=False,
|
|
482
|
+
help="Customize Manage database encryption keys"
|
|
483
|
+
)
|
|
299
484
|
|
|
300
485
|
# Arcgis
|
|
301
486
|
# -----------------------------------------------------------------------------
|
|
@@ -726,6 +911,7 @@ cosArgGroup.add_argument(
|
|
|
726
911
|
)
|
|
727
912
|
cosArgGroup.add_argument(
|
|
728
913
|
"--cos-resourcegroup",
|
|
914
|
+
dest="ibmcos_resourcegroup",
|
|
729
915
|
required=False,
|
|
730
916
|
help="When using IBM COS, set the resource group where the instance will run"
|
|
731
917
|
)
|
|
@@ -893,6 +1079,12 @@ otherArgGroup.add_argument(
|
|
|
893
1079
|
default=False,
|
|
894
1080
|
help="Launch the upgrade without prompting for confirmation",
|
|
895
1081
|
)
|
|
1082
|
+
otherArgGroup.add_argument(
|
|
1083
|
+
"--image-pull-policy",
|
|
1084
|
+
dest="image_pull_policy",
|
|
1085
|
+
required=False,
|
|
1086
|
+
help="Manually set the image pull policy used in the Tekton Pipeline",
|
|
1087
|
+
)
|
|
896
1088
|
|
|
897
1089
|
otherArgGroup.add_argument(
|
|
898
1090
|
"-h", "--help",
|
|
@@ -14,8 +14,9 @@ from .manageSettings import ManageSettingsMixin
|
|
|
14
14
|
from .turbonomicSettings import TurbonomicSettingsMixin
|
|
15
15
|
from .additionalConfigs import AdditionalConfigsMixin
|
|
16
16
|
|
|
17
|
+
|
|
17
18
|
class InstallSettingsMixin(Db2SettingsMixin, KafkaSettingsMixin, ManageSettingsMixin, TurbonomicSettingsMixin, AdditionalConfigsMixin):
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
"""
|
|
20
|
+
This class collects all the Mixins providing interactive prompts for mas-install
|
|
21
|
+
"""
|
|
22
|
+
pass
|