pyxecm 1.3.0__py3-none-any.whl → 1.5__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 pyxecm might be problematic. Click here for more details.
- pyxecm/__init__.py +3 -0
- pyxecm/coreshare.py +2636 -0
- pyxecm/customizer/__init__.py +6 -0
- pyxecm/customizer/browser_automation.py +231 -56
- pyxecm/customizer/customizer.py +466 -235
- pyxecm/customizer/k8s.py +49 -27
- pyxecm/customizer/m365.py +1183 -263
- pyxecm/customizer/payload.py +13854 -5368
- pyxecm/customizer/pht.py +503 -0
- pyxecm/customizer/salesforce.py +1782 -0
- pyxecm/customizer/sap.py +5 -5
- pyxecm/customizer/servicenow.py +1221 -0
- pyxecm/customizer/successfactors.py +1056 -0
- pyxecm/customizer/translate.py +2 -2
- pyxecm/helper/__init__.py +2 -0
- pyxecm/helper/assoc.py +27 -7
- pyxecm/helper/data.py +1527 -0
- pyxecm/helper/web.py +189 -25
- pyxecm/helper/xml.py +244 -40
- pyxecm/otac.py +311 -25
- pyxecm/otcs.py +3866 -1103
- pyxecm/otds.py +397 -150
- pyxecm/otiv.py +1 -1
- pyxecm/otmm.py +808 -0
- pyxecm/otpd.py +17 -12
- {pyxecm-1.3.0.dist-info → pyxecm-1.5.dist-info}/METADATA +4 -1
- pyxecm-1.5.dist-info/RECORD +30 -0
- {pyxecm-1.3.0.dist-info → pyxecm-1.5.dist-info}/WHEEL +1 -1
- pyxecm-1.3.0.dist-info/RECORD +0 -23
- {pyxecm-1.3.0.dist-info → pyxecm-1.5.dist-info}/LICENSE +0 -0
- {pyxecm-1.3.0.dist-info → pyxecm-1.5.dist-info}/top_level.txt +0 -0
pyxecm/otpd.py
CHANGED
|
@@ -24,7 +24,7 @@ apply_setting: apply a setting to a PowerDocs tenant
|
|
|
24
24
|
"""
|
|
25
25
|
|
|
26
26
|
__author__ = "Dr. Marc Diefenbruch"
|
|
27
|
-
__copyright__ = "Copyright
|
|
27
|
+
__copyright__ = "Copyright 2024, OpenText"
|
|
28
28
|
__credits__ = ["Kai-Philip Gatzweiler"]
|
|
29
29
|
__maintainer__ = "Dr. Marc Diefenbruch"
|
|
30
30
|
__email__ = "mdiefenb@opentext.com"
|
|
@@ -199,7 +199,9 @@ class OTPD:
|
|
|
199
199
|
additional_error_message, exception
|
|
200
200
|
)
|
|
201
201
|
else:
|
|
202
|
-
message = "Cannot decode response as JSon; error -> {}".format(
|
|
202
|
+
message = "Cannot decode response as JSon; error -> {}".format(
|
|
203
|
+
exception
|
|
204
|
+
)
|
|
203
205
|
if show_error:
|
|
204
206
|
logger.error(message)
|
|
205
207
|
else:
|
|
@@ -246,18 +248,18 @@ class OTPD:
|
|
|
246
248
|
# Step2: fetch session id from the response, and hit j_security_check with proper authentication
|
|
247
249
|
# Step3: get session id from the response, add to self. It can be used for other transactions
|
|
248
250
|
session = requests.Session()
|
|
249
|
-
logger.
|
|
251
|
+
logger.debug("Initiating dummy rest call to Tomcat to get initial session id")
|
|
250
252
|
response = session.put(request_url, json=payload)
|
|
251
253
|
logger.info(response.text)
|
|
252
254
|
if response.ok:
|
|
253
|
-
logger.
|
|
255
|
+
logger.debug("Url to authenticate Tomcat for Session id -> %s", auth_url)
|
|
254
256
|
session_response = session.post(auth_url)
|
|
255
257
|
if session_response.ok:
|
|
256
|
-
logger.
|
|
258
|
+
logger.debug(
|
|
257
259
|
"Response for -> %s is -> %s", auth_url, str(session_response)
|
|
258
260
|
)
|
|
259
261
|
session_dict = session.cookies.get_dict()
|
|
260
|
-
logger.
|
|
262
|
+
logger.debug(
|
|
261
263
|
"Session id to perform Rest API calls to Tomcat -> %s",
|
|
262
264
|
session_dict["JSESSIONID"],
|
|
263
265
|
)
|
|
@@ -294,7 +296,7 @@ class OTPD:
|
|
|
294
296
|
request_url = self.config()["otpdImportDatabaseUrl"]
|
|
295
297
|
|
|
296
298
|
logger.info(
|
|
297
|
-
"Importing
|
|
299
|
+
"Importing PowerDocs database backup -> %s, into PowerDocs ServerManager on -> %s",
|
|
298
300
|
filename,
|
|
299
301
|
request_url,
|
|
300
302
|
)
|
|
@@ -306,7 +308,7 @@ class OTPD:
|
|
|
306
308
|
return response
|
|
307
309
|
else:
|
|
308
310
|
logger.error(
|
|
309
|
-
"Failed to
|
|
311
|
+
"Failed to import PowerDocs database backup -> %s into -> %s; error -> %s",
|
|
310
312
|
filename,
|
|
311
313
|
request_url,
|
|
312
314
|
response.text,
|
|
@@ -338,10 +340,11 @@ class OTPD:
|
|
|
338
340
|
|
|
339
341
|
request_url = self.config()["settingsUrl"]
|
|
340
342
|
|
|
341
|
-
logger.
|
|
342
|
-
"Update setting -> %s with value -> %s; calling -> %s",
|
|
343
|
+
logger.debug(
|
|
344
|
+
"Update PowerDocs setting -> %s with value -> %s (tenant -> %s); calling -> %s",
|
|
343
345
|
setting_name,
|
|
344
346
|
setting_value,
|
|
347
|
+
tenant_name,
|
|
345
348
|
request_url,
|
|
346
349
|
)
|
|
347
350
|
|
|
@@ -361,13 +364,15 @@ class OTPD:
|
|
|
361
364
|
return self.parse_request_response(response)
|
|
362
365
|
# Check if Session has expired - then re-authenticate and try once more
|
|
363
366
|
elif response.status_code == 401 and retries == 0:
|
|
364
|
-
logger.
|
|
367
|
+
logger.debug("Session has expired - try to re-authenticate...")
|
|
365
368
|
self.authenticate(True)
|
|
366
369
|
retries += 1
|
|
367
370
|
else:
|
|
368
371
|
logger.error(
|
|
369
|
-
"Failed to update setting -> %s; error -> %s",
|
|
372
|
+
"Failed to update PowerDocs setting -> %s with value -> %s (tenant -> %s); error -> %s",
|
|
370
373
|
setting_name,
|
|
374
|
+
setting_value,
|
|
375
|
+
tenant_name,
|
|
371
376
|
response.text,
|
|
372
377
|
)
|
|
373
378
|
return None
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pyxecm
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.5
|
|
4
4
|
Summary: A Python library to interact with Opentext Extended ECM REST API
|
|
5
5
|
Author-email: Kai Gatzweiler <kgatzweiler@opentext.com>, "Dr. Marc Diefenbruch" <mdiefenb@opentext.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/opentext/pyxecm
|
|
@@ -21,7 +21,10 @@ Requires-Dist: kubernetes
|
|
|
21
21
|
Requires-Dist: zipfile36
|
|
22
22
|
Requires-Dist: suds
|
|
23
23
|
Requires-Dist: python-hcl2
|
|
24
|
+
Requires-Dist: xmltodict
|
|
24
25
|
Requires-Dist: lxml
|
|
26
|
+
Requires-Dist: openpyxl
|
|
27
|
+
Requires-Dist: pandas
|
|
25
28
|
Provides-Extra: customizer
|
|
26
29
|
Requires-Dist: python-hcl2 ; extra == 'customizer'
|
|
27
30
|
Requires-Dist: lxml ; extra == 'customizer'
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
pyxecm/__init__.py,sha256=f0oWCTOUQrX9JuJZaP4r-5d493lSwvrGksu8xPxg4bI,253
|
|
2
|
+
pyxecm/coreshare.py,sha256=P23gGqnHFFP4akeC5ISSZXNwcNbDTFssXpIIDQdWvfI,95691
|
|
3
|
+
pyxecm/otac.py,sha256=i1-4nljJUedAsz842s4WXH_YjmEC-hZh66zEGhRS5Uw,21684
|
|
4
|
+
pyxecm/otcs.py,sha256=ZJvYOWiRnD_GutI6hM2923gap-xhWWtSG9jVuebE5YI,418633
|
|
5
|
+
pyxecm/otds.py,sha256=Q9ZHs1vQiPz2ZbkubjKUxX2r_Gl5F0NcqrWNXxllk1E,160812
|
|
6
|
+
pyxecm/otiv.py,sha256=nHEBQ9tddtKMiR1yPbGGP-jJiDaQpyoFmZcQFPgw22w,1720
|
|
7
|
+
pyxecm/otmm.py,sha256=pNy5oIk70duAlOEG3e43JxpQMQbCldRL9iD0KBGyUjU,28566
|
|
8
|
+
pyxecm/otpd.py,sha256=zRus7UnYYrwG9tYDPPLxBbGzozATwS07ftYun4kaaV4,12503
|
|
9
|
+
pyxecm/customizer/__init__.py,sha256=g32OUKoJiBYY4q9IMQctKTKq6YhFtv-IAIHcRC0KJu4,330
|
|
10
|
+
pyxecm/customizer/browser_automation.py,sha256=cbUTGBLmyYO7617QfNJCZtFCK0i8-2hfA6QhKSfuKOY,16430
|
|
11
|
+
pyxecm/customizer/customizer.py,sha256=7GHsuq2njG29xL5bLqdYe5eDcw2TpBgZMJOs6X4xKrY,86293
|
|
12
|
+
pyxecm/customizer/k8s.py,sha256=XMoLVQXxJwq51aXaYANwaqniYi7lqNnmVOmEkaqSuQY,36455
|
|
13
|
+
pyxecm/customizer/m365.py,sha256=emZOJX503-i3FWOqVXe26geiz_apFZiI-jWtoWJxE40,184000
|
|
14
|
+
pyxecm/customizer/payload.py,sha256=74n_KpNZ3s6ftDkjMP3fmsSHcrPXDb5gZrPgkcQ4Tiw,765958
|
|
15
|
+
pyxecm/customizer/pht.py,sha256=AxP8v8SbzkBZaxYDJ3Dqr330l29RJwzpkuKNIW46VjM,17348
|
|
16
|
+
pyxecm/customizer/salesforce.py,sha256=j2oqI4uzQdsl52hMMK9OyzL6Z3EUZYnvqEGQ_OscMEY,63787
|
|
17
|
+
pyxecm/customizer/sap.py,sha256=RNrHH0KjBQ10dHXoMaZIEd3EVPC8--4AN7nzy_Iv9k4,5947
|
|
18
|
+
pyxecm/customizer/servicenow.py,sha256=3ytAjLVKbWDL9MmTPPgPe7-bMDN1JLBQSGtkcGil20k,46745
|
|
19
|
+
pyxecm/customizer/successfactors.py,sha256=6hww4tKF_Bm2aLzFMStPuJmKJ4uBqteXwjWDkW0yDHU,38847
|
|
20
|
+
pyxecm/customizer/translate.py,sha256=RxC7O4lxfGaG1nttCm5WI5X2wEM4eEqbVcUtnYns1TQ,3968
|
|
21
|
+
pyxecm/helper/__init__.py,sha256=sScoB5RQAEkzP2LLvR_cRYwC1ARSdvBiv-4JwnJA7Dw,140
|
|
22
|
+
pyxecm/helper/assoc.py,sha256=MKjDgPYnRcuHkDMIvFMtYXiyMWPXpNie6UQrVgV0s-0,6488
|
|
23
|
+
pyxecm/helper/data.py,sha256=__B9FVwXBPpByaRaJ-l348po3dcaBXw4J1jVzQRy608,60308
|
|
24
|
+
pyxecm/helper/web.py,sha256=CYhJW4TgyHc2w9nV75YgGJR3fDHeUjQEMkulNI9U3E8,9263
|
|
25
|
+
pyxecm/helper/xml.py,sha256=SjMzZcFF37p50ESewF83bh5vl1oDOIjbYRLRZNVEeOU,31664
|
|
26
|
+
pyxecm-1.5.dist-info/LICENSE,sha256=z5DWWd5cHmQYJnq4BDt1bmVQjuXY1Qsp6y0v5ETCw-s,11360
|
|
27
|
+
pyxecm-1.5.dist-info/METADATA,sha256=NumUPC4fUYuiZJyN39qnYX1BqOBjUPXxYFPaP3w8N08,2076
|
|
28
|
+
pyxecm-1.5.dist-info/WHEEL,sha256=cVxcB9AmuTcXqmwrtPhNK88dr7IR_b6qagTj0UvIEbY,91
|
|
29
|
+
pyxecm-1.5.dist-info/top_level.txt,sha256=TGak3_dYN67ugKFbmRxRG1leDyOt0T7dypjdX4Ij1WE,7
|
|
30
|
+
pyxecm-1.5.dist-info/RECORD,,
|
pyxecm-1.3.0.dist-info/RECORD
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
pyxecm/__init__.py,sha256=665ihX9KXfsUog3EL-zvfRkZzVE4h4XNRTT3ZEzRw5A,196
|
|
2
|
-
pyxecm/otac.py,sha256=Qn9bDGCzY0CaDbvhyryWNMKOu9eYOrJ89CLaJyp1bpg,11086
|
|
3
|
-
pyxecm/otcs.py,sha256=Tibf3CQYmcEne3bDSP3Trh5Gd1b6LN5FMXZpADO7oeo,297894
|
|
4
|
-
pyxecm/otds.py,sha256=6vuzQws0N97wMiD0E8EAbmr_e598fH9dHrb4Md4q00Q,150221
|
|
5
|
-
pyxecm/otiv.py,sha256=Q-6aVJpWTTdfEPnx_tdfzsAiADNNysq21Eg4UBZXBYU,1720
|
|
6
|
-
pyxecm/otpd.py,sha256=jyl-_IOuU0n_IUz-8Lr-DKFOk1qkSShLMElutX2eR0g,12282
|
|
7
|
-
pyxecm/customizer/__init__.py,sha256=KIhX23XcVHLLXb1uVjWwf18lKu-6MoJ-GAKOD2UZiAQ,165
|
|
8
|
-
pyxecm/customizer/browser_automation.py,sha256=5okZmasuf8ffcIkrz8DjtFxW8mvYE__vf21Ex3YxD2M,10383
|
|
9
|
-
pyxecm/customizer/customizer.py,sha256=ydd1s9628aXjgbX92zqa4j94J_Wi_vGmoOCYiF6TdWw,75565
|
|
10
|
-
pyxecm/customizer/k8s.py,sha256=5DqpbHUjaXXEfDWBCgBhHBJd_jgQ1FYXqVEcIWdCXQk,35616
|
|
11
|
-
pyxecm/customizer/m365.py,sha256=BO6H8ROBXcGRKNU8tpdH6QR_i2gdytKEet91ENJMzjY,144131
|
|
12
|
-
pyxecm/customizer/payload.py,sha256=R7EJ26KTsNyBpxgc9zDcyQgSQkP3WgcrEuc1gggtSsw,387500
|
|
13
|
-
pyxecm/customizer/sap.py,sha256=943H0Boqgta6Ty6fqkzy09PQ3G0LCY7QYTRnP1CF4ow,5951
|
|
14
|
-
pyxecm/customizer/translate.py,sha256=sEdKVHUyRTMwpYCxL0ck-YcmO_Lc0jcdDyC_lOOKUVI,3971
|
|
15
|
-
pyxecm/helper/__init__.py,sha256=lc3nuJfygpKJuvqZhBfT54ZhtVbXp2uUi7PsrIXXWA0,116
|
|
16
|
-
pyxecm/helper/assoc.py,sha256=mxqduv3-eG32lToV_XlzHt9QI2mnuYBPxGmzth4C3-Q,5645
|
|
17
|
-
pyxecm/helper/web.py,sha256=ku7oReFEV6m5tWeqWC9zETuWPUMj7gwGylRzi0NO7Gg,3306
|
|
18
|
-
pyxecm/helper/xml.py,sha256=Fll_D1F-3NY61T_qhisAgUZ-9HsH517kvDXSdmvU7Q0,23854
|
|
19
|
-
pyxecm-1.3.0.dist-info/LICENSE,sha256=z5DWWd5cHmQYJnq4BDt1bmVQjuXY1Qsp6y0v5ETCw-s,11360
|
|
20
|
-
pyxecm-1.3.0.dist-info/METADATA,sha256=bqQ3ARhr7QUJt0Whcenki7bCVsy5dURu20uP2LHLuXw,2007
|
|
21
|
-
pyxecm-1.3.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
|
|
22
|
-
pyxecm-1.3.0.dist-info/top_level.txt,sha256=TGak3_dYN67ugKFbmRxRG1leDyOt0T7dypjdX4Ij1WE,7
|
|
23
|
-
pyxecm-1.3.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|