mas-cli 12.1.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 +13428 -4725
  24. mas/cli/update/app.py +42 -8
  25. mas/cli/upgrade/app.py +52 -15
  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.1.0.data → mas_cli-12.27.0.data}/scripts/mas-cli +5 -1
  30. {mas_cli-12.1.0.dist-info → mas_cli-12.27.0.dist-info}/METADATA +12 -3
  31. {mas_cli-12.1.0.dist-info → mas_cli-12.27.0.dist-info}/RECORD +33 -25
  32. {mas_cli-12.1.0.dist-info → mas_cli-12.27.0.dist-info}/WHEEL +1 -1
  33. {mas_cli-12.1.0.dist-info → mas_cli-12.27.0.dist-info}/top_level.txt +0 -0
mas/cli/update/app.py CHANGED
@@ -90,6 +90,9 @@ class UpdateApp(BaseApp):
90
90
  if self.dynamicClient is None:
91
91
  self.fatalError("The Kubernetes dynamic Client is not available. See log file for details")
92
92
 
93
+ # Perform a check whether the cluster is set up for airgap install, this will trigger an early failure if the cluster is using the now
94
+ # deprecated MaximoApplicationSuite ImageContentSourcePolicy instead of the new ImageDigestMirrorSet
95
+ self.isAirgap()
93
96
  self.reviewCurrentCatalog()
94
97
  self.reviewMASInstance()
95
98
 
@@ -109,6 +112,13 @@ class UpdateApp(BaseApp):
109
112
  else:
110
113
  h.stop_and_persist(symbol=self.successIcon, text="IBM Watson Discovery is not installed")
111
114
 
115
+ with Halo(text='Checking for IBM Watson Openscale', spinner=self.spinner) as h:
116
+ if self.isWatsonOpenscaleInstalled():
117
+ h.stop_and_persist(symbol=self.failureIcon, text="IBM Watson Openscale is installed")
118
+ self.fatalError("Watson Openscale is currently installed in the instance of Cloud Pak for Data that is managed by the MAS CLI (in the ibm-cpd namespace), this is no longer supported and the update can not proceed as a result. Please contact IBM support for assistance")
119
+ else:
120
+ h.stop_and_persist(symbol=self.successIcon, text="IBM Watson Openscale is not installed")
121
+
112
122
  with Halo(text='Checking for IBM Certificate-Manager', spinner=self.spinner) as h:
113
123
  if self.isIBMCertManagerInstalled():
114
124
  h.stop_and_persist(symbol=self.successIcon, text="IBM Certificate-Manager will be replaced by Red Hat Certificate-Manager")
@@ -232,13 +242,13 @@ class UpdateApp(BaseApp):
232
242
  self.printH1("Select IBM Maximo Operator Catalog Version")
233
243
  self.printDescription([
234
244
  "Select MAS Catalog",
235
- " 1) Dec 05 2024 Update (MAS 9.0.6, 8.11.17, & 8.10.20)",
236
- " 2) Nov 07 2024 Update (MAS 9.0.4, 8.11.16, & 8.10.19)",
237
- " 3) Oct 03 2024 Update (MAS 9.0.3, 8.11.15, & 8.10.18)",
245
+ " 1) Jun 05 2025 Update (MAS 9.1.0, 9.0.12, 8.11.21, & 8.10.26)",
246
+ " 2) May 01 2025 Update (MAS 9.0.11, 8.11.22, & 8.10.25)",
247
+ " 3) Apr 03 2025 Update (MAS 9.0.10, 8.11.21, & 8.10.24)",
238
248
  ])
239
249
 
240
250
  catalogOptions = [
241
- "v9-241205-amd64", "v9-241107-amd64", "v9-241003-amd64"
251
+ "v9-250624-amd64", "v9-250501-amd64", "v9-250403-amd64",
242
252
  ]
243
253
  self.promptForListSelect("Select catalog version", catalogOptions, "mas_catalog_version", default=1)
244
254
 
@@ -257,6 +267,17 @@ class UpdateApp(BaseApp):
257
267
  # Watson Discovery has never been installed on this cluster
258
268
  return False
259
269
 
270
+ def isWatsonOpenscaleInstalled(self) -> bool:
271
+ try:
272
+ wosAPI = self.dynamicClient.resources.get(api_version="wos.cpd.ibm.com/v1", kind="WOService")
273
+ wos = wosAPI.get(namespace="ibm-cpd").to_dict()['items']
274
+ if len(wos) > 0:
275
+ return True
276
+ return False
277
+ except (ResourceNotFoundError, NotFoundError):
278
+ # Watson Openscale has never been installed on this cluster
279
+ return False
280
+
260
281
  def isIBMCertManagerInstalled(self) -> bool:
261
282
  """
262
283
  Check whether the deprecated IBM Certificate-Manager is installed, if it is then we will
@@ -329,14 +350,20 @@ class UpdateApp(BaseApp):
329
350
  # the case bundles in there anymore
330
351
  # Longer term we will centralise this information inside the mas-devops python collection,
331
352
  # where it can be made available to both the ansible collection and this python package.
332
- defaultMongoVersion = "6.0.12"
353
+ defaultMongoVersion = "7.0.12"
333
354
  mongoVersions = {
334
355
  "v9-240625-amd64": "6.0.12",
335
356
  "v9-240730-amd64": "6.0.12",
336
357
  "v9-240827-amd64": "6.0.12",
337
358
  "v9-241003-amd64": "6.0.12",
338
359
  "v9-241107-amd64": "7.0.12",
339
- "v9-241205-amd64": "7.0.12"
360
+ "v9-241205-amd64": "7.0.12",
361
+ "v9-250109-amd64": "7.0.12",
362
+ "v9-250206-amd64": "7.0.12",
363
+ "v9-250306-amd64": "7.0.12",
364
+ "v9-250403-amd64": "7.0.12",
365
+ "v9-250501-amd64": "7.0.12",
366
+ "v9-250624-amd64": "7.0.12",
340
367
  }
341
368
  catalogVersion = self.getParam('mas_catalog_version')
342
369
  if catalogVersion in mongoVersions:
@@ -350,6 +377,7 @@ class UpdateApp(BaseApp):
350
377
  currentMongoVersionMajor = currentMongoVersion.split(".")[0]
351
378
 
352
379
  if targetMongoVersionMajor > currentMongoVersionMajor:
380
+ self.setParam("mongodb_action", "install")
353
381
  # Let users know that Mongo will be upgraded if existing MongoDb major.minor version
354
382
  # is lower than the target major version
355
383
  # We don't show this message for normal updates, e.g. 5.0.1 to 5.0.2
@@ -374,7 +402,7 @@ class UpdateApp(BaseApp):
374
402
  self.showMongoDependencyUpdateNotice(currentMongoVersion, targetMongoVersion)
375
403
  self.fatalError(f"Existing MongoDB Community Edition installation at version {currentMongoVersion} cannot be downgraded to version {targetMongoVersion}")
376
404
  else:
377
- h.stop_and_persist(symbol=self.successIcon, text=f"MongoDb CE is aleady installed at version {targetMongoVersion}")
405
+ h.stop_and_persist(symbol=self.successIcon, text=f"MongoDb CE is already installed at version {targetMongoVersion}")
378
406
  else:
379
407
  # There's no MongoDb instance installed in the cluster, so nothing to do
380
408
  h.stop_and_persist(symbol=self.successIcon, text="No MongoDb CE instances found")
@@ -465,7 +493,13 @@ class UpdateApp(BaseApp):
465
493
  "v9-240827-amd64": "4.8.0",
466
494
  "v9-241003-amd64": "4.8.0",
467
495
  "v9-241107-amd64": "4.8.0",
468
- "v9-241205-amd64": "5.0.0"
496
+ "v9-241205-amd64": "5.0.0",
497
+ "v9-250109-amd64": "5.0.0",
498
+ "v9-250206-amd64": "5.0.0",
499
+ "v9-250306-amd64": "5.0.0",
500
+ "v9-250403-amd64": "5.0.0",
501
+ "v9-250501-amd64": "5.0.0",
502
+ "v9-250624-amd64": "5.1.3",
469
503
  }
470
504
 
471
505
  with Halo(text='Checking for IBM Cloud Pak for Data', spinner=self.spinner) as h:
mas/cli/upgrade/app.py CHANGED
@@ -20,15 +20,16 @@ from halo import Halo
20
20
  from ..cli import BaseApp
21
21
  from ..validators import InstanceIDValidator
22
22
  from .argParser import upgradeArgParser
23
+ from .settings import UpgradeSettingsMixin
23
24
 
24
25
  from mas.devops.ocp import createNamespace
25
- from mas.devops.mas import listMasInstances, getMasChannel
26
+ from mas.devops.mas import listMasInstances, getMasChannel, getWorkspaceId, verifyAppInstance
26
27
  from mas.devops.tekton import installOpenShiftPipelines, updateTektonDefinitions, launchUpgradePipeline
27
28
 
28
29
  logger = logging.getLogger(__name__)
29
30
 
30
31
 
31
- class UpgradeApp(BaseApp):
32
+ class UpgradeApp(BaseApp, UpgradeSettingsMixin):
32
33
  def upgrade(self, argv):
33
34
  """
34
35
  Upgrade MAS instance
@@ -38,7 +39,7 @@ class UpgradeApp(BaseApp):
38
39
  self.noConfirm = args.no_confirm
39
40
  self.skipPreCheck = args.skip_pre_check
40
41
  self.licenseAccepted = args.accept_license
41
- next_mas_channel = None
42
+ self.devMode = args.dev_mode
42
43
 
43
44
  if instanceId is None:
44
45
  self.printH1("Set Target OpenShift Cluster")
@@ -46,6 +47,8 @@ class UpgradeApp(BaseApp):
46
47
  self.connect()
47
48
  else:
48
49
  logger.debug("MAS instance ID is set, so we assume already connected to the desired OCP")
50
+ # Need to lookup target architecture because configDb2 will try to access self.architecture
51
+ self.lookupTargetArchitecture()
49
52
 
50
53
  if self.dynamicClient is None:
51
54
  print_formatted_text(HTML("<Red>Error: The Kubernetes dynamic Client is not available. See log file for details</Red>"))
@@ -70,18 +73,27 @@ class UpgradeApp(BaseApp):
70
73
  print()
71
74
  instanceId = prompt(HTML('<Yellow>Enter MAS instance ID: </Yellow>'), completer=suiteCompleter, validator=InstanceIDValidator(), validate_while_typing=False)
72
75
 
73
- current_mas_channel = getMasChannel(self.dynamicClient, instanceId)
74
-
75
- if current_mas_channel not in self.upgrade_path:
76
- self.fatalError(f"No upgrade available, {instanceId} is are already on the latest release {current_mas_channel}")
77
-
78
- next_mas_channel = self.upgrade_path[current_mas_channel]
76
+ currentChannel = getMasChannel(self.dynamicClient, instanceId)
77
+ if currentChannel is not None:
78
+ if self.devMode:
79
+ # This is mainly used for the scenario where Manage Foundation would be installed, because core-upgrade does not use the value of nextChannel,
80
+ # it uses a compatibility_matrix object in ansible-devops to determine the next channel, so nextChannel is only informative for core upgrade purposes
81
+ nextChannel = prompt(HTML('<Yellow>Custom channel</Yellow> '))
82
+ else:
83
+ if currentChannel not in self.upgrade_path:
84
+ self.fatalError(f"No upgrade available, {instanceId} is are already on the latest release {currentChannel}")
85
+ nextChannel = self.upgrade_path[currentChannel]
86
+ else:
87
+ # We still allow the upgrade to proceed even though we can't detect the MAS instance. The upgrade may be being
88
+ # queued up to run after install for instance
89
+ currentChannel = "Unknown"
90
+ nextChannel = "Unknown"
79
91
 
80
- if not self.licenseAccepted:
92
+ if not self.licenseAccepted and not self.devMode:
81
93
  self.printH1("License Terms")
82
94
  self.printDescription([
83
95
  "To continue with the upgrade, you must accept the license terms:",
84
- self.licenses[next_mas_channel]
96
+ self.licenses[nextChannel]
85
97
  ])
86
98
 
87
99
  if self.noConfirm:
@@ -90,15 +102,40 @@ class UpgradeApp(BaseApp):
90
102
  if not self.yesOrNo("Do you accept the license terms"):
91
103
  exit(1)
92
104
 
105
+ # The only scenario where Manage Foundation needs to be installed during an upgrade is from 9.0.x to 9.1.x (if Manage was not already installed in 9.0.x).
106
+ self.setParam("should_install_manage_foundation", "false")
107
+ if nextChannel.startswith("9.1") and not verifyAppInstance(self.dynamicClient, instanceId, "manage"):
108
+ self.manageAppName = "Manage foundation"
109
+ self.showAdvancedOptions = False
110
+ self.installIoT = False
111
+ self.installFacilities = False
112
+ self.installManage = True
113
+ self.isManageFoundation = True
114
+ self.printDescription([f"{self.manageAppName} installs the following capabilities: User, Security groups, Application configurator and Mobile configurator."])
115
+ self.printH1("Configure IBM Container Registry")
116
+ self.promptForString("IBM entitlement key", "ibm_entitlement_key", isPassword=True)
117
+ if self.devMode:
118
+ self.promptForString("Artifactory username", "artifactory_username")
119
+ self.promptForString("Artifactory token", "artifactory_token", isPassword=True)
120
+ self.setParam("should_install_manage_foundation", "true")
121
+ self.setParam("is_full_manage", "false")
122
+ self.setParam("mas_appws_components", "")
123
+ self.setParam("mas_app_settings_aio_flag", "false")
124
+ self.setParam("mas_app_channel_manage", nextChannel)
125
+ self.setParam("mas_workspace_id", getWorkspaceId(self.dynamicClient, instanceId))
126
+ # It has been decided that we don't need to ask for any specific Manage Settings
127
+ # self.manageSettings()
128
+ self.configDb2(silentMode=True)
129
+
93
130
  self.printH1("Review Settings")
94
131
  print_formatted_text(HTML(f"<LightSlateGrey>Instance ID ..................... {instanceId}</LightSlateGrey>"))
95
- print_formatted_text(HTML(f"<LightSlateGrey>Current MAS Channel ............. {current_mas_channel}</LightSlateGrey>"))
96
- print_formatted_text(HTML(f"<LightSlateGrey>Next MAS Channel ................ {next_mas_channel}</LightSlateGrey>"))
132
+ print_formatted_text(HTML(f"<LightSlateGrey>Current MAS Channel ............. {currentChannel}</LightSlateGrey>"))
133
+ print_formatted_text(HTML(f"<LightSlateGrey>Next MAS Channel ................ {nextChannel}</LightSlateGrey>"))
97
134
  print_formatted_text(HTML(f"<LightSlateGrey>Skip Pre-Upgrade Checks ......... {self.skipPreCheck}</LightSlateGrey>"))
98
135
 
99
136
  if not self.noConfirm:
100
137
  print()
101
- continueWithUpgrade = self.yesOrNo("Proceed with these settings?")
138
+ continueWithUpgrade = self.yesOrNo("Proceed with these settings")
102
139
 
103
140
  if self.noConfirm or continueWithUpgrade:
104
141
  self.createTektonFileWithDigest()
@@ -119,7 +156,7 @@ class UpgradeApp(BaseApp):
119
156
  h.stop_and_persist(symbol=self.successIcon, text=f"Latest Tekton definitions are installed (v{self.version})")
120
157
 
121
158
  with Halo(text='Submitting PipelineRun for {instanceId} upgrade', spinner=self.spinner) as h:
122
- pipelineURL = launchUpgradePipeline(self.dynamicClient, instanceId, self.skipPreCheck)
159
+ pipelineURL = launchUpgradePipeline(self.dynamicClient, instanceId, self.skipPreCheck, params=self.params)
123
160
  if pipelineURL is not None:
124
161
  h.stop_and_persist(symbol=self.successIcon, text=f"PipelineRun for {instanceId} upgrade submitted")
125
162
  print_formatted_text(HTML(f"\nView progress:\n <Cyan><u>{pipelineURL}</u></Cyan>\n"))
@@ -53,6 +53,13 @@ otherArgGroup.add_argument(
53
53
  default=False,
54
54
  help="Accept all license terms without prompting"
55
55
  )
56
+ otherArgGroup.add_argument(
57
+ "--dev-mode",
58
+ required=False,
59
+ action="store_true",
60
+ default=False,
61
+ help="Configure upgrade for development mode",
62
+ )
56
63
  otherArgGroup.add_argument(
57
64
  '-h', "--help",
58
65
  action='help',
@@ -0,0 +1,19 @@
1
+ # *****************************************************************************
2
+ # Copyright (c) 2025 IBM Corporation and other Contributors.
3
+ #
4
+ # All rights reserved. This program and the accompanying materials
5
+ # are made available under the terms of the Eclipse Public License v1.0
6
+ # which accompanies this distribution, and is available at
7
+ # http://www.eclipse.org/legal/epl-v10.html
8
+ #
9
+ # *****************************************************************************
10
+
11
+ from ...install.settings.db2Settings import Db2SettingsMixin
12
+ from ...install.settings.manageSettings import ManageSettingsMixin
13
+
14
+
15
+ class UpgradeSettingsMixin(Db2SettingsMixin, ManageSettingsMixin):
16
+ """
17
+ This class collects all the Mixins providing interactive prompts for mas-upgrade
18
+ """
19
+ pass
mas/cli/validators.py CHANGED
@@ -10,6 +10,7 @@
10
10
 
11
11
  from re import match
12
12
  from os import path
13
+ from json import loads, JSONDecodeError
13
14
 
14
15
  # Use of the openshift client rather than the kubernetes client allows us access to "apply"
15
16
  from openshift import dynamic
@@ -136,3 +137,15 @@ class OptimizerInstallPlanValidator(Validator):
136
137
  response = document.text
137
138
  if response not in ["full", "limited"]:
138
139
  raise ValidationError(message='Enter a valid response: full, limited', cursor_position=len(response))
140
+
141
+
142
+ class JsonValidator(Validator):
143
+ def validate(self, document):
144
+ """
145
+ Validate that a response is a valid JSON
146
+ """
147
+ inputJson = document.text
148
+ try:
149
+ loads(inputJson)
150
+ except JSONDecodeError:
151
+ raise (ValidationError(message='Enter a valid JSON', cursor_position=len(inputJson)))
@@ -15,6 +15,7 @@ from sys import argv
15
15
 
16
16
  from mas.cli import __version__ as VERSION
17
17
  from mas.cli.install.app import InstallApp
18
+ from mas.cli.aiservice.install.app import AiServiceInstallApp
18
19
  from mas.cli.update.app import UpdateApp
19
20
  from mas.cli.upgrade.app import UpgradeApp
20
21
  from mas.cli.uninstall.app import UninstallApp
@@ -54,6 +55,9 @@ if __name__ == '__main__':
54
55
  if function == "install":
55
56
  app = InstallApp()
56
57
  app.install(argv[2:])
58
+ elif function == "aiservice-install":
59
+ app = AiServiceInstallApp()
60
+ app.install(argv[2:])
57
61
  elif function == "uninstall":
58
62
  app = UninstallApp()
59
63
  app.uninstall(argv[2:])
@@ -74,7 +78,7 @@ if __name__ == '__main__':
74
78
  except KeyboardInterrupt:
75
79
  pass
76
80
  except ApiException as e:
77
- app.fatalError(message=f"An error occured communicating with the target server: {e.reason} ({e.status})", exception=e)
81
+ app.fatalError(message=f"[{e.status}:{e.reason}] {e.summary()}")
78
82
  except MaxRetryError as e:
79
83
  app.fatalError(message="Unable to connect to API server", exception=e)
80
84
  except TemplateNotFound as e:
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: mas-cli
3
- Version: 12.1.0
3
+ Version: 12.27.0
4
4
  Summary: Python Admin CLI for Maximo Application Suite
5
5
  Home-page: https://github.com/ibm-mas/cli
6
6
  Author: David Parker
@@ -17,7 +17,7 @@ Classifier: Programming Language :: Python :: 3.11
17
17
  Classifier: Topic :: Communications
18
18
  Classifier: Topic :: Internet
19
19
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
20
- Requires-Dist: mas-devops>=1.10.0
20
+ Requires-Dist: mas-devops>=2.0.0
21
21
  Requires-Dist: halo
22
22
  Requires-Dist: prompt_toolkit
23
23
  Requires-Dist: openshift
@@ -28,6 +28,15 @@ Requires-Dist: build; extra == "dev"
28
28
  Requires-Dist: flake8; extra == "dev"
29
29
  Requires-Dist: pytest; extra == "dev"
30
30
  Requires-Dist: pyinstaller; extra == "dev"
31
+ Dynamic: author
32
+ Dynamic: author-email
33
+ Dynamic: classifier
34
+ Dynamic: description
35
+ Dynamic: home-page
36
+ Dynamic: license
37
+ Dynamic: provides-extra
38
+ Dynamic: requires-dist
39
+ Dynamic: summary
31
40
 
32
41
  mas.devops
33
42
  ----------
@@ -1,23 +1,30 @@
1
- mas/cli/__init__.py,sha256=WYSU0MV45wJvR2Cf4OZj_ri1t50MpWfvDrWdQM1McsI,526
2
- mas/cli/cli.py,sha256=0ZAuvGjjcxyV8svC-bsUvBVZBfNLA_cmUwjPWU0J_0g,17484
1
+ mas/cli/__init__.py,sha256=HvgJWgWdFR6efb6Tn2a7S2Cx2HzeP4bVJ43Zycq8Zx8,527
2
+ mas/cli/cli.py,sha256=ypIdN9oKMO0JhdOEh2PwfT-YQVWQ2qU5cOp8K7anTmU,18933
3
3
  mas/cli/displayMixins.py,sha256=e3lAx1DIOwsriDcNI0M2JyP1jeLOZKvId6sPrvWLyqs,5984
4
- mas/cli/gencfg.py,sha256=p38Ss_ooiNHOZTJT8l0YxDaEaPwD4ZXgxEbW-S9YLNY,3311
5
- mas/cli/validators.py,sha256=vi1pFA8QtqMhqtGk1NlkkNDUrlFCi53kS5wJqFGDgOU,5108
4
+ mas/cli/gencfg.py,sha256=kgbYihOcqGADK8XnrfcEoBawaY1qSGKuVNW1unACOnU,4433
5
+ mas/cli/validators.py,sha256=2mLqBfoFU4D3A84ma9namjpnPKR3a0XySSGXa_b7pWg,5495
6
+ mas/cli/aiservice/install/__init__.py,sha256=Af-TjB2oIy3bM-Rt3YNeJ_2ndsZZU7azqFkT5um7XQY,515
7
+ mas/cli/aiservice/install/app.py,sha256=zK9K4wx4kADrCQMeIVaDWDZ46_8h3o1-_hbEDH6rZt0,41423
8
+ mas/cli/aiservice/install/argBuilder.py,sha256=gavbxaLPfYVXwjjTs6o-dpP-_0YrL1Kg8XIxAjWT5oU,15584
9
+ mas/cli/aiservice/install/argParser.py,sha256=ilwn58CoZxUs54guscEiFD-loTB2iUgL4w18kz3MqA4,21441
10
+ mas/cli/aiservice/install/params.py,sha256=923Q-T-3VJqr7QZCvFUVu8syKVnMfy604al7xk9UtNY,3491
11
+ mas/cli/aiservice/install/summarizer.py,sha256=E7bxTnOz6wSgce_KBq2AmQSLpWeMwSjWhED-2gEtTnY,11405
6
12
  mas/cli/install/__init__.py,sha256=v0WJlcdrSycWGT5ofFjRDV3jTZ8AqVCz1AGxok4Khtc,508
7
- mas/cli/install/app.py,sha256=fZQLKQYfvinBlnyMt8PQi7Qt4nIn8Atb247bNYT_9r4,55758
8
- mas/cli/install/argBuilder.py,sha256=dATpbY1kojvhr35NixZ11WZD3DzEJAfaAWhaYFLhEnQ,23033
9
- mas/cli/install/argParser.py,sha256=dt06eSJkZFqzMD0gboMDUBbfIrDnLB3nEowFAs3_Th4,33205
10
- mas/cli/install/catalogs.py,sha256=ivwWYa8eyfchOAaYxEHNTNsIevosw6Z9EQQ0iHcA3sU,697
11
- mas/cli/install/params.py,sha256=niefj7fwDvwDVjCOiRybURk6lNUWliv8IXNCX-mIkZw,4780
12
- mas/cli/install/summarizer.py,sha256=EW-9lIQQu9a0HWJeDP33socVKqTikkpr74n7uqa6QTs,21050
13
+ mas/cli/install/app.py,sha256=Op2reTxi9okJF0xUM04InADWtEg-d20mhc3sNY7zHtI,69019
14
+ mas/cli/install/argBuilder.py,sha256=v_rnUYnmY4q4xw8HQJ2L07NtA84ZZcJLpL9jVvR-Kb4,28380
15
+ mas/cli/install/argParser.py,sha256=PjqadJxQKaIryld3YuwmN_VuSoHJBILwLRWbnCfOtlM,35161
16
+ mas/cli/install/catalogs.py,sha256=p9WFQSA6vcQNiOrlAGCmr5e5IwHJTL0D9QU-e1wco6E,804
17
+ mas/cli/install/params.py,sha256=vzaqivQ7odTxI45wZmrelA73cnaPu4fomBpDNwhYp40,5650
18
+ mas/cli/install/summarizer.py,sha256=7uBwOWWT9Zxhwbl3chZvC8a3n_qt8IVUU-6ZkGfIJAc,22045
13
19
  mas/cli/install/settings/__init__.py,sha256=RdyBSh-rM0wkuvILVzJ1gxjOtLuQ1mF6QbEL0MyiKIY,1034
14
- mas/cli/install/settings/additionalConfigs.py,sha256=QyeVN_y3aXL3GU5RxtfPSgQTon72eSj6_xlwSwJvoMQ,9426
15
- mas/cli/install/settings/db2Settings.py,sha256=YlMosXmxj8L71U_pcg0M9o38Xw2W1fOK8rdj0hPgpCA,13003
16
- mas/cli/install/settings/kafkaSettings.py,sha256=oJxFhWQkqPi7Do53tu4oxskGbEL4hroH2129OLom5lU,7241
17
- mas/cli/install/settings/manageSettings.py,sha256=rBBq3r9AaDS5fLeKbItgLBnsguuZwyNKo80oYBBEB-0,16241
18
- mas/cli/install/settings/mongodbSettings.py,sha256=UVt8vMLNpgyewlcymSystIhICnHsd0uoM9qpgezVjGg,2567
19
- mas/cli/install/settings/turbonomicSettings.py,sha256=wRAFV0Rg3Em_ILkLd8xR-a_oglXivnVeF6nVI_73Q9o,1695
20
- mas/cli/templates/ibm-mas-tekton.yaml,sha256=WRCMHV-1nCKFlcgP93syRxtuvAvvJr03fD8N5dCh3vs,797296
20
+ mas/cli/install/settings/additionalConfigs.py,sha256=hFN7OIiPmmAoo8h_5JiMLtW9r30zK1mMKuPqPpFf1mc,10187
21
+ mas/cli/install/settings/db2Settings.py,sha256=zFw1wiZTGFLdUsQUKY0l5dWne4ZXQhKuksSO0Q_86AM,16825
22
+ mas/cli/install/settings/kafkaSettings.py,sha256=r1uK-IApqB9IQiSNt_8sP0wa4FPJcXU_qnadhElEOuI,7241
23
+ mas/cli/install/settings/manageSettings.py,sha256=TZIdAY_xUc751i-Vs6cXhVI3ul4MCnLdtpP9khLZpeI,16109
24
+ mas/cli/install/settings/mongodbSettings.py,sha256=aZdQHpeMwLVznrJWAkJsZu2Ok9t4Dkra2RGa_uKJHaY,2604
25
+ mas/cli/install/settings/turbonomicSettings.py,sha256=ul4eWf53b1NCzJTFsEPX6DWM23YUlWILYBygplqXYlU,1631
26
+ mas/cli/templates/facilities-configs.yml.j2,sha256=Er4UwxUl1Y3rtjIPMExVM8EXNcbesMusgLcRV050B1s,774
27
+ mas/cli/templates/ibm-mas-tekton.yaml,sha256=h4lQ8KzuAibP2mjQ3uClXqw7i4SBq-Hu4nV8viECDfk,1092620
21
28
  mas/cli/templates/jdbccfg.yml.j2,sha256=cANbwkUkKEPQp-P3_BB_Llbt94457Ciagah2hOdySIM,1644
22
29
  mas/cli/templates/suite_mongocfg.yml.j2,sha256=WrgJUfGyvfaRIHjY5VR_zLZ5irTpV5khKNq76ejIxKU,1606
23
30
  mas/cli/templates/pod-templates/best-effort/ibm-data-dictionary-assetdatadictionary.yml,sha256=8VG_FDFcEjWNaAOZTcS58Pe0tWOXC10SJLloNqzEMC8,757
@@ -94,13 +101,14 @@ mas/cli/uninstall/__init__.py,sha256=v0WJlcdrSycWGT5ofFjRDV3jTZ8AqVCz1AGxok4Khtc
94
101
  mas/cli/uninstall/app.py,sha256=uPJy3z-1Yt66MSFdZz1Qh8MjA97ZrQmjSgTx-Gqua9I,10047
95
102
  mas/cli/uninstall/argParser.py,sha256=VVG4myUvFOtg98L6HAzpgGg7s5c-vub_UMZPGuNQko4,3452
96
103
  mas/cli/update/__init__.py,sha256=v0WJlcdrSycWGT5ofFjRDV3jTZ8AqVCz1AGxok4Khtc,508
97
- mas/cli/update/app.py,sha256=onkB2Gn9aJooMQB0AKrGvjN1B7yhajWTGTRdBRiM4I8,37226
104
+ mas/cli/update/app.py,sha256=tp8bGy-vJMch1HOFgGNlntqKkYD1Tyozjq2Kx_FH7Z8,39265
98
105
  mas/cli/update/argParser.py,sha256=oOIXzB_rsI2p3og_5X5SFt_g7LURyEdLxZeiGCKq1nU,4711
99
106
  mas/cli/upgrade/__init__.py,sha256=v0WJlcdrSycWGT5ofFjRDV3jTZ8AqVCz1AGxok4Khtc,508
100
- mas/cli/upgrade/app.py,sha256=xSM5r-3tE3ohphHvUSsXqRMvnxNFSoy_8-jlQLjLEno,6180
101
- mas/cli/upgrade/argParser.py,sha256=pqzNDSHy6l13JunHWQLyOI-NFnDGDoVJ_HM07FLYJSc,2033
102
- mas_cli-12.1.0.data/scripts/mas-cli,sha256=Es-wSefTBcR3Vs5_kIUHQLfWHxTXVrmIPMFY0hbrxt8,3493
103
- mas_cli-12.1.0.dist-info/METADATA,sha256=UQUNyyzKoA5SrTtn785A_tY3RY6-NDOqKIRMbMn6iGc,2080
104
- mas_cli-12.1.0.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
105
- mas_cli-12.1.0.dist-info/top_level.txt,sha256=_Hlsp7pvMvyV14LFg-vk1hULq30j61EILnnxMFIhhc8,4
106
- mas_cli-12.1.0.dist-info/RECORD,,
107
+ mas/cli/upgrade/app.py,sha256=3Z7oVrQGJPrV5dZjXZuBGT78vODPDLXnHnfD27pxNDs,8926
108
+ mas/cli/upgrade/argParser.py,sha256=5JxAcbwKjFKCKnbucCxg7Xacdhjphb9nRORfsgB1h_0,2196
109
+ mas/cli/upgrade/settings/__init__.py,sha256=QI2CUsj-NXBU1qrPOsOk4MbeWnfNq0UOF3rYYc_1l2A,775
110
+ mas_cli-12.27.0.data/scripts/mas-cli,sha256=ijL4Ecg_2fRtdrQ8Mk28qsi6o3O6KRIAUM8BUry5cPs,3621
111
+ mas_cli-12.27.0.dist-info/METADATA,sha256=G_IO6Is5T8yJ9_vDZL81VaZ0_hAfEIpVWmpI3PXCRgw,2259
112
+ mas_cli-12.27.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
113
+ mas_cli-12.27.0.dist-info/top_level.txt,sha256=_Hlsp7pvMvyV14LFg-vk1hULq30j61EILnnxMFIhhc8,4
114
+ mas_cli-12.27.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.6.0)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5