mas-cli 12.1.0__py3-none-any.whl → 13.1.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 +16 -6
- mas/cli/install/app.py +20 -14
- mas/cli/install/argBuilder.py +17 -3
- mas/cli/install/argParser.py +37 -2
- mas/cli/install/catalogs.py +2 -1
- mas/cli/install/params.py +6 -0
- mas/cli/install/settings/turbonomicSettings.py +1 -3
- mas/cli/install/summarizer.py +1 -2
- mas/cli/templates/ibm-mas-tekton.yaml +872 -205
- mas/cli/update/app.py +12 -7
- mas/cli/upgrade/app.py +13 -10
- {mas_cli-12.1.0.dist-info → mas_cli-13.1.0.dist-info}/METADATA +12 -3
- {mas_cli-12.1.0.dist-info → mas_cli-13.1.0.dist-info}/RECORD +17 -17
- {mas_cli-12.1.0.dist-info → mas_cli-13.1.0.dist-info}/WHEEL +1 -1
- {mas_cli-12.1.0.data → mas_cli-13.1.0.data}/scripts/mas-cli +0 -0
- {mas_cli-12.1.0.dist-info → mas_cli-13.1.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
|
|
|
@@ -232,13 +235,13 @@ class UpdateApp(BaseApp):
|
|
|
232
235
|
self.printH1("Select IBM Maximo Operator Catalog Version")
|
|
233
236
|
self.printDescription([
|
|
234
237
|
"Select MAS Catalog",
|
|
235
|
-
" 1)
|
|
236
|
-
" 2)
|
|
237
|
-
" 3)
|
|
238
|
+
" 1) Jan 09 2025 Update (MAS 9.0.7, 8.11.18, & 8.10.21)",
|
|
239
|
+
" 2) Dec 05 2024 Update (MAS 9.0.6, 8.11.17, & 8.10.20)",
|
|
240
|
+
" 3) Nov 07 2024 Update (MAS 9.0.4, 8.11.16, & 8.10.19)",
|
|
238
241
|
])
|
|
239
242
|
|
|
240
243
|
catalogOptions = [
|
|
241
|
-
"v9-
|
|
244
|
+
"v9-250109-amd64", "v9-241205-amd64", "v9-241107-amd64"
|
|
242
245
|
]
|
|
243
246
|
self.promptForListSelect("Select catalog version", catalogOptions, "mas_catalog_version", default=1)
|
|
244
247
|
|
|
@@ -329,14 +332,15 @@ class UpdateApp(BaseApp):
|
|
|
329
332
|
# the case bundles in there anymore
|
|
330
333
|
# Longer term we will centralise this information inside the mas-devops python collection,
|
|
331
334
|
# where it can be made available to both the ansible collection and this python package.
|
|
332
|
-
defaultMongoVersion = "
|
|
335
|
+
defaultMongoVersion = "7.0.12"
|
|
333
336
|
mongoVersions = {
|
|
334
337
|
"v9-240625-amd64": "6.0.12",
|
|
335
338
|
"v9-240730-amd64": "6.0.12",
|
|
336
339
|
"v9-240827-amd64": "6.0.12",
|
|
337
340
|
"v9-241003-amd64": "6.0.12",
|
|
338
341
|
"v9-241107-amd64": "7.0.12",
|
|
339
|
-
"v9-241205-amd64": "7.0.12"
|
|
342
|
+
"v9-241205-amd64": "7.0.12",
|
|
343
|
+
"v9-250109-amd64": "7.0.12"
|
|
340
344
|
}
|
|
341
345
|
catalogVersion = self.getParam('mas_catalog_version')
|
|
342
346
|
if catalogVersion in mongoVersions:
|
|
@@ -465,7 +469,8 @@ class UpdateApp(BaseApp):
|
|
|
465
469
|
"v9-240827-amd64": "4.8.0",
|
|
466
470
|
"v9-241003-amd64": "4.8.0",
|
|
467
471
|
"v9-241107-amd64": "4.8.0",
|
|
468
|
-
"v9-241205-amd64": "5.0.0"
|
|
472
|
+
"v9-241205-amd64": "5.0.0",
|
|
473
|
+
"v9-250109-amd64": "5.0.0"
|
|
469
474
|
}
|
|
470
475
|
|
|
471
476
|
with Halo(text='Checking for IBM Cloud Pak for Data', spinner=self.spinner) as h:
|
mas/cli/upgrade/app.py
CHANGED
|
@@ -38,7 +38,6 @@ class UpgradeApp(BaseApp):
|
|
|
38
38
|
self.noConfirm = args.no_confirm
|
|
39
39
|
self.skipPreCheck = args.skip_pre_check
|
|
40
40
|
self.licenseAccepted = args.accept_license
|
|
41
|
-
next_mas_channel = None
|
|
42
41
|
|
|
43
42
|
if instanceId is None:
|
|
44
43
|
self.printH1("Set Target OpenShift Cluster")
|
|
@@ -70,18 +69,22 @@ class UpgradeApp(BaseApp):
|
|
|
70
69
|
print()
|
|
71
70
|
instanceId = prompt(HTML('<Yellow>Enter MAS instance ID: </Yellow>'), completer=suiteCompleter, validator=InstanceIDValidator(), validate_while_typing=False)
|
|
72
71
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
72
|
+
currentChannel = getMasChannel(self.dynamicClient, instanceId)
|
|
73
|
+
if currentChannel is not None:
|
|
74
|
+
if currentChannel not in self.upgrade_path:
|
|
75
|
+
self.fatalError(f"No upgrade available, {instanceId} is are already on the latest release {currentChannel}")
|
|
76
|
+
nextChannel = self.upgrade_path[currentChannel]
|
|
77
|
+
else:
|
|
78
|
+
# We still allow the upgrade to proceed even though we can't detect the MAS instance. The upgrade may be being
|
|
79
|
+
# queued up to run after install for instance
|
|
80
|
+
currentChannel = "Unknown"
|
|
81
|
+
nextChannel = "Unknown"
|
|
79
82
|
|
|
80
83
|
if not self.licenseAccepted:
|
|
81
84
|
self.printH1("License Terms")
|
|
82
85
|
self.printDescription([
|
|
83
86
|
"To continue with the upgrade, you must accept the license terms:",
|
|
84
|
-
self.licenses[
|
|
87
|
+
self.licenses[nextChannel]
|
|
85
88
|
])
|
|
86
89
|
|
|
87
90
|
if self.noConfirm:
|
|
@@ -92,8 +95,8 @@ class UpgradeApp(BaseApp):
|
|
|
92
95
|
|
|
93
96
|
self.printH1("Review Settings")
|
|
94
97
|
print_formatted_text(HTML(f"<LightSlateGrey>Instance ID ..................... {instanceId}</LightSlateGrey>"))
|
|
95
|
-
print_formatted_text(HTML(f"<LightSlateGrey>Current MAS Channel ............. {
|
|
96
|
-
print_formatted_text(HTML(f"<LightSlateGrey>Next MAS Channel ................ {
|
|
98
|
+
print_formatted_text(HTML(f"<LightSlateGrey>Current MAS Channel ............. {currentChannel}</LightSlateGrey>"))
|
|
99
|
+
print_formatted_text(HTML(f"<LightSlateGrey>Next MAS Channel ................ {nextChannel}</LightSlateGrey>"))
|
|
97
100
|
print_formatted_text(HTML(f"<LightSlateGrey>Skip Pre-Upgrade Checks ......... {self.skipPreCheck}</LightSlateGrey>"))
|
|
98
101
|
|
|
99
102
|
if not self.noConfirm:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: mas-cli
|
|
3
|
-
Version:
|
|
3
|
+
Version: 13.1.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>=
|
|
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,23 @@
|
|
|
1
|
-
mas/cli/__init__.py,sha256=
|
|
2
|
-
mas/cli/cli.py,sha256=
|
|
1
|
+
mas/cli/__init__.py,sha256=DkwsZTkmOj4JPvMYcjqZCtmq0SKrVnThI4S9DCRY-Zc,526
|
|
2
|
+
mas/cli/cli.py,sha256=SAxjeXwCLU_3SrAjV0U7b381MyFYQkvVRv8qdQTXP4s,18115
|
|
3
3
|
mas/cli/displayMixins.py,sha256=e3lAx1DIOwsriDcNI0M2JyP1jeLOZKvId6sPrvWLyqs,5984
|
|
4
4
|
mas/cli/gencfg.py,sha256=p38Ss_ooiNHOZTJT8l0YxDaEaPwD4ZXgxEbW-S9YLNY,3311
|
|
5
5
|
mas/cli/validators.py,sha256=vi1pFA8QtqMhqtGk1NlkkNDUrlFCi53kS5wJqFGDgOU,5108
|
|
6
6
|
mas/cli/install/__init__.py,sha256=v0WJlcdrSycWGT5ofFjRDV3jTZ8AqVCz1AGxok4Khtc,508
|
|
7
|
-
mas/cli/install/app.py,sha256=
|
|
8
|
-
mas/cli/install/argBuilder.py,sha256=
|
|
9
|
-
mas/cli/install/argParser.py,sha256=
|
|
10
|
-
mas/cli/install/catalogs.py,sha256=
|
|
11
|
-
mas/cli/install/params.py,sha256=
|
|
12
|
-
mas/cli/install/summarizer.py,sha256=
|
|
7
|
+
mas/cli/install/app.py,sha256=b2ZrvAasBnxQbk5z3udW6c93xwizAURQr4XFschYZ4o,56140
|
|
8
|
+
mas/cli/install/argBuilder.py,sha256=GYPHvkRrJo4xHeLvNrbq90qTh1c6FCE7MP9w_tbHGO8,23977
|
|
9
|
+
mas/cli/install/argParser.py,sha256=ltMCOYjn7Zr2d5I62LN46qBFX67miVb-asJFIsuasyc,34363
|
|
10
|
+
mas/cli/install/catalogs.py,sha256=vzn94BIDfrpk98YRjxqDgooUEr0jFMLINhu-8EsoF-k,724
|
|
11
|
+
mas/cli/install/params.py,sha256=0Zp-aPPFBnZhnhz7wYs_YLJYgPRcAYVEHA2L7Iajs90,4959
|
|
12
|
+
mas/cli/install/summarizer.py,sha256=yyYk0Vf_theQqMPe-_r1o0D_kniZkkmExd1Fkj8J2r4,20987
|
|
13
13
|
mas/cli/install/settings/__init__.py,sha256=RdyBSh-rM0wkuvILVzJ1gxjOtLuQ1mF6QbEL0MyiKIY,1034
|
|
14
14
|
mas/cli/install/settings/additionalConfigs.py,sha256=QyeVN_y3aXL3GU5RxtfPSgQTon72eSj6_xlwSwJvoMQ,9426
|
|
15
15
|
mas/cli/install/settings/db2Settings.py,sha256=YlMosXmxj8L71U_pcg0M9o38Xw2W1fOK8rdj0hPgpCA,13003
|
|
16
16
|
mas/cli/install/settings/kafkaSettings.py,sha256=oJxFhWQkqPi7Do53tu4oxskGbEL4hroH2129OLom5lU,7241
|
|
17
17
|
mas/cli/install/settings/manageSettings.py,sha256=rBBq3r9AaDS5fLeKbItgLBnsguuZwyNKo80oYBBEB-0,16241
|
|
18
18
|
mas/cli/install/settings/mongodbSettings.py,sha256=UVt8vMLNpgyewlcymSystIhICnHsd0uoM9qpgezVjGg,2567
|
|
19
|
-
mas/cli/install/settings/turbonomicSettings.py,sha256=
|
|
20
|
-
mas/cli/templates/ibm-mas-tekton.yaml,sha256=
|
|
19
|
+
mas/cli/install/settings/turbonomicSettings.py,sha256=ul4eWf53b1NCzJTFsEPX6DWM23YUlWILYBygplqXYlU,1631
|
|
20
|
+
mas/cli/templates/ibm-mas-tekton.yaml,sha256=QdvFa38qgjv9HQcYGFwKgVm7CgHbJ4u67OKO5xijrrs,823549
|
|
21
21
|
mas/cli/templates/jdbccfg.yml.j2,sha256=cANbwkUkKEPQp-P3_BB_Llbt94457Ciagah2hOdySIM,1644
|
|
22
22
|
mas/cli/templates/suite_mongocfg.yml.j2,sha256=WrgJUfGyvfaRIHjY5VR_zLZ5irTpV5khKNq76ejIxKU,1606
|
|
23
23
|
mas/cli/templates/pod-templates/best-effort/ibm-data-dictionary-assetdatadictionary.yml,sha256=8VG_FDFcEjWNaAOZTcS58Pe0tWOXC10SJLloNqzEMC8,757
|
|
@@ -94,13 +94,13 @@ mas/cli/uninstall/__init__.py,sha256=v0WJlcdrSycWGT5ofFjRDV3jTZ8AqVCz1AGxok4Khtc
|
|
|
94
94
|
mas/cli/uninstall/app.py,sha256=uPJy3z-1Yt66MSFdZz1Qh8MjA97ZrQmjSgTx-Gqua9I,10047
|
|
95
95
|
mas/cli/uninstall/argParser.py,sha256=VVG4myUvFOtg98L6HAzpgGg7s5c-vub_UMZPGuNQko4,3452
|
|
96
96
|
mas/cli/update/__init__.py,sha256=v0WJlcdrSycWGT5ofFjRDV3jTZ8AqVCz1AGxok4Khtc,508
|
|
97
|
-
mas/cli/update/app.py,sha256=
|
|
97
|
+
mas/cli/update/app.py,sha256=vJMCgmNJjRHMieNz98Vd_1krTc6TgZMom02Q6OvICcc,37595
|
|
98
98
|
mas/cli/update/argParser.py,sha256=oOIXzB_rsI2p3og_5X5SFt_g7LURyEdLxZeiGCKq1nU,4711
|
|
99
99
|
mas/cli/upgrade/__init__.py,sha256=v0WJlcdrSycWGT5ofFjRDV3jTZ8AqVCz1AGxok4Khtc,508
|
|
100
|
-
mas/cli/upgrade/app.py,sha256=
|
|
100
|
+
mas/cli/upgrade/app.py,sha256=EuEZayc0nw9kA6Hz8M9Mv7uk0hgmspJSZCYhNEfCECk,6428
|
|
101
101
|
mas/cli/upgrade/argParser.py,sha256=pqzNDSHy6l13JunHWQLyOI-NFnDGDoVJ_HM07FLYJSc,2033
|
|
102
|
-
mas_cli-
|
|
103
|
-
mas_cli-
|
|
104
|
-
mas_cli-
|
|
105
|
-
mas_cli-
|
|
106
|
-
mas_cli-
|
|
102
|
+
mas_cli-13.1.0.data/scripts/mas-cli,sha256=Es-wSefTBcR3Vs5_kIUHQLfWHxTXVrmIPMFY0hbrxt8,3493
|
|
103
|
+
mas_cli-13.1.0.dist-info/METADATA,sha256=Q2vHMZKh8Pmk_ounZHSEB-OSZMfIRhXkBK4zjJluVRM,2258
|
|
104
|
+
mas_cli-13.1.0.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
105
|
+
mas_cli-13.1.0.dist-info/top_level.txt,sha256=_Hlsp7pvMvyV14LFg-vk1hULq30j61EILnnxMFIhhc8,4
|
|
106
|
+
mas_cli-13.1.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|