pyxecm 1.5__py3-none-any.whl → 2.0.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 pyxecm might be problematic. Click here for more details.

Files changed (56) hide show
  1. pyxecm/__init__.py +6 -2
  2. pyxecm/avts.py +1492 -0
  3. pyxecm/coreshare.py +1075 -960
  4. pyxecm/customizer/__init__.py +16 -4
  5. pyxecm/customizer/__main__.py +58 -0
  6. pyxecm/customizer/api/__init__.py +5 -0
  7. pyxecm/customizer/api/__main__.py +6 -0
  8. pyxecm/customizer/api/app.py +914 -0
  9. pyxecm/customizer/api/auth.py +154 -0
  10. pyxecm/customizer/api/metrics.py +92 -0
  11. pyxecm/customizer/api/models.py +13 -0
  12. pyxecm/customizer/api/payload_list.py +865 -0
  13. pyxecm/customizer/api/settings.py +103 -0
  14. pyxecm/customizer/browser_automation.py +332 -139
  15. pyxecm/customizer/customizer.py +1075 -1057
  16. pyxecm/customizer/exceptions.py +35 -0
  17. pyxecm/customizer/guidewire.py +322 -0
  18. pyxecm/customizer/k8s.py +787 -338
  19. pyxecm/customizer/log.py +107 -0
  20. pyxecm/customizer/m365.py +3424 -2270
  21. pyxecm/customizer/nhc.py +1169 -0
  22. pyxecm/customizer/openapi.py +258 -0
  23. pyxecm/customizer/payload.py +18201 -7030
  24. pyxecm/customizer/pht.py +1047 -210
  25. pyxecm/customizer/salesforce.py +836 -727
  26. pyxecm/customizer/sap.py +58 -41
  27. pyxecm/customizer/servicenow.py +851 -383
  28. pyxecm/customizer/settings.py +442 -0
  29. pyxecm/customizer/successfactors.py +408 -346
  30. pyxecm/customizer/translate.py +83 -48
  31. pyxecm/helper/__init__.py +5 -2
  32. pyxecm/helper/assoc.py +98 -38
  33. pyxecm/helper/data.py +2482 -742
  34. pyxecm/helper/logadapter.py +27 -0
  35. pyxecm/helper/web.py +229 -101
  36. pyxecm/helper/xml.py +528 -172
  37. pyxecm/maintenance_page/__init__.py +5 -0
  38. pyxecm/maintenance_page/__main__.py +6 -0
  39. pyxecm/maintenance_page/app.py +51 -0
  40. pyxecm/maintenance_page/settings.py +28 -0
  41. pyxecm/maintenance_page/static/favicon.avif +0 -0
  42. pyxecm/maintenance_page/templates/maintenance.html +165 -0
  43. pyxecm/otac.py +234 -140
  44. pyxecm/otawp.py +2689 -0
  45. pyxecm/otcs.py +12344 -7547
  46. pyxecm/otds.py +3166 -2219
  47. pyxecm/otiv.py +36 -21
  48. pyxecm/otmm.py +1363 -296
  49. pyxecm/otpd.py +231 -127
  50. pyxecm-2.0.0.dist-info/METADATA +145 -0
  51. pyxecm-2.0.0.dist-info/RECORD +54 -0
  52. {pyxecm-1.5.dist-info → pyxecm-2.0.0.dist-info}/WHEEL +1 -1
  53. pyxecm-1.5.dist-info/METADATA +0 -51
  54. pyxecm-1.5.dist-info/RECORD +0 -30
  55. {pyxecm-1.5.dist-info → pyxecm-2.0.0.dist-info/licenses}/LICENSE +0 -0
  56. {pyxecm-1.5.dist-info → pyxecm-2.0.0.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,24 @@
1
- """PYXECM classes for Customizer"""
1
+ """PYXECM classes for Customizer."""
2
2
 
3
3
  from .browser_automation import BrowserAutomation
4
-
5
4
  from .customizer import Customizer
6
5
  from .k8s import K8s
7
6
  from .m365 import M365
8
7
  from .payload import Payload
9
- from .sap import SAP
10
8
  from .salesforce import Salesforce
11
- from .successfactors import SuccessFactors
9
+ from .sap import SAP
12
10
  from .servicenow import ServiceNow
11
+ from .successfactors import SuccessFactors
12
+
13
+ __all__ = [
14
+ "M365",
15
+ "SAP",
16
+ "BrowserAutomation",
17
+ "Customizer",
18
+ "Guidewire",
19
+ "K8s",
20
+ "Payload",
21
+ "Salesforce",
22
+ "ServiceNow",
23
+ "SuccessFactors",
24
+ ]
@@ -0,0 +1,58 @@
1
+ """Start the Customizer to process a payload."""
2
+
3
+ __author__ = "Dr. Marc Diefenbruch"
4
+ __copyright__ = "Copyright (C) 2024-2025, OpenText"
5
+ __credits__ = ["Kai-Philip Gatzweiler"]
6
+ __maintainer__ = "Dr. Marc Diefenbruch"
7
+ __email__ = "mdiefenb@opentext.com"
8
+
9
+ import logging
10
+ import os
11
+ import sys
12
+
13
+ from pyxecm.customizer import Customizer
14
+ from pyxecm.customizer.payload import load_payload
15
+
16
+ logger = logging.getLogger("customizer")
17
+
18
+
19
+ def main(argv: list[str]) -> int:
20
+ """Start the Customizer."""
21
+
22
+ if len(argv) < 2:
23
+ logger.error("No input file specified")
24
+ sys.exit(1)
25
+
26
+ payload_filename = argv[1]
27
+
28
+ if not os.path.isfile(payload_filename):
29
+ logger.error("Input file does not exist")
30
+ sys.exit(1)
31
+
32
+ payload = load_payload(payload_filename)
33
+ customizer_settings = payload.get("customizerSettings", {})
34
+
35
+ # Overwrite the customizer settings with the payload specific ones:
36
+ customizer_settings.update({"cust_payload": payload_filename})
37
+
38
+ my_customizer = Customizer(logger=logger, settings=customizer_settings)
39
+
40
+ my_customizer.customization_run()
41
+
42
+ return 0
43
+
44
+
45
+ if __name__ == "__main__":
46
+ logging.basicConfig(
47
+ format="%(asctime)s %(levelname)s [%(name)s] %(message)s",
48
+ datefmt="%d-%b-%Y %H:%M:%S",
49
+ level=logging.INFO,
50
+ handlers=[
51
+ logging.StreamHandler(sys.stdout),
52
+ ],
53
+ )
54
+
55
+ try:
56
+ main(sys.argv)
57
+ except KeyboardInterrupt:
58
+ logger.warning("KeyboardInterrupt - exiting")
@@ -0,0 +1,5 @@
1
+ """PYXECM API main imports."""
2
+
3
+ from .app import app, run_api
4
+
5
+ __all__ = ["app", "run_api"]
@@ -0,0 +1,6 @@
1
+ """Wrapper to start the Customizer API."""
2
+
3
+ from pyxecm.customizer.api import run_api
4
+
5
+ if __name__ == "__main__":
6
+ run_api()