digitalhub 0.8.0b3__py3-none-any.whl → 0.8.0b4__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 digitalhub might be problematic. Click here for more details.

Files changed (80) hide show
  1. digitalhub/__init__.py +3 -2
  2. digitalhub/client/dhcore/client.py +6 -1
  3. digitalhub/context/builder.py +1 -1
  4. digitalhub/context/context.py +1 -1
  5. digitalhub/entities/_base/entity/entity.py +2 -28
  6. digitalhub/entities/_base/unversioned/builder.py +66 -0
  7. digitalhub/entities/_base/unversioned/entity.py +0 -38
  8. digitalhub/entities/_base/versioned/builder.py +68 -0
  9. digitalhub/entities/_base/versioned/entity.py +0 -41
  10. digitalhub/entities/_builders/entity.py +37 -32
  11. digitalhub/entities/_builders/metadata.py +3 -10
  12. digitalhub/entities/_builders/spec.py +11 -21
  13. digitalhub/entities/_builders/status.py +8 -18
  14. digitalhub/entities/_builders/uuid.py +4 -11
  15. digitalhub/entities/artifact/_base/builder.py +86 -0
  16. digitalhub/entities/artifact/artifact/builder.py +18 -0
  17. digitalhub/entities/artifact/builder.py +15 -97
  18. digitalhub/entities/artifact/crud.py +1 -1
  19. digitalhub/entities/builders.py +63 -0
  20. digitalhub/entities/dataitem/_base/builder.py +86 -0
  21. digitalhub/entities/dataitem/builder.py +15 -108
  22. digitalhub/entities/dataitem/crud.py +3 -3
  23. digitalhub/entities/dataitem/dataitem/builder.py +18 -0
  24. digitalhub/entities/dataitem/iceberg/builder.py +18 -0
  25. digitalhub/entities/dataitem/table/builder.py +18 -0
  26. digitalhub/entities/function/_base/builder.py +78 -0
  27. digitalhub/entities/function/_base/entity.py +2 -2
  28. digitalhub/entities/function/builder.py +22 -57
  29. digitalhub/entities/function/crud.py +1 -1
  30. digitalhub/entities/model/_base/builder.py +86 -0
  31. digitalhub/entities/model/builder.py +15 -116
  32. digitalhub/entities/model/crud.py +1 -1
  33. digitalhub/entities/model/huggingface/builder.py +18 -0
  34. digitalhub/entities/model/mlflow/builder.py +18 -0
  35. digitalhub/entities/model/model/builder.py +18 -0
  36. digitalhub/entities/model/sklearn/builder.py +18 -0
  37. digitalhub/entities/project/_base/builder.py +128 -0
  38. digitalhub/entities/project/{project → _base}/entity.py +9 -51
  39. digitalhub/entities/project/builder.py +20 -51
  40. digitalhub/entities/project/crud.py +1 -1
  41. digitalhub/entities/run/_base/builder.py +73 -0
  42. digitalhub/entities/run/_base/entity.py +6 -149
  43. digitalhub/entities/run/builder.py +21 -47
  44. digitalhub/entities/run/crud.py +1 -1
  45. digitalhub/entities/secret/_base/builder.py +81 -0
  46. digitalhub/entities/secret/{secret → _base}/entity.py +2 -2
  47. digitalhub/entities/secret/builder.py +20 -62
  48. digitalhub/entities/secret/crud.py +2 -2
  49. digitalhub/entities/task/_base/builder.py +76 -0
  50. digitalhub/entities/task/builder.py +21 -44
  51. digitalhub/entities/task/crud.py +1 -1
  52. digitalhub/entities/workflow/_base/builder.py +78 -0
  53. digitalhub/entities/workflow/_base/entity.py +2 -2
  54. digitalhub/entities/workflow/builder.py +20 -60
  55. digitalhub/entities/workflow/crud.py +1 -1
  56. digitalhub/factory/factory.py +204 -0
  57. digitalhub/factory/utils.py +90 -0
  58. digitalhub/runtimes/builder.py +24 -41
  59. digitalhub/runtimes/kind_registry.py +14 -0
  60. digitalhub/runtimes/utils.py +28 -0
  61. digitalhub/utils/exceptions.py +6 -0
  62. digitalhub/utils/generic_utils.py +1 -1
  63. {digitalhub-0.8.0b3.dist-info → digitalhub-0.8.0b4.dist-info}/METADATA +1 -1
  64. {digitalhub-0.8.0b3.dist-info → digitalhub-0.8.0b4.dist-info}/RECORD +75 -57
  65. digitalhub/entities/_builders/factory.py +0 -44
  66. digitalhub/entities/registries.py +0 -48
  67. digitalhub/registry/models.py +0 -87
  68. digitalhub/registry/registry.py +0 -74
  69. digitalhub/registry/utils.py +0 -151
  70. /digitalhub/entities/project/{project → _base}/__init__.py +0 -0
  71. /digitalhub/entities/project/{project → _base}/spec.py +0 -0
  72. /digitalhub/entities/project/{project → _base}/status.py +0 -0
  73. /digitalhub/entities/secret/{secret → _base}/__init__.py +0 -0
  74. /digitalhub/entities/secret/{secret → _base}/spec.py +0 -0
  75. /digitalhub/entities/secret/{secret → _base}/status.py +0 -0
  76. /digitalhub/{registry → factory}/__init__.py +0 -0
  77. /digitalhub/runtimes/{base.py → _base.py} +0 -0
  78. {digitalhub-0.8.0b3.dist-info → digitalhub-0.8.0b4.dist-info}/LICENSE.txt +0 -0
  79. {digitalhub-0.8.0b3.dist-info → digitalhub-0.8.0b4.dist-info}/WHEEL +0 -0
  80. {digitalhub-0.8.0b3.dist-info → digitalhub-0.8.0b4.dist-info}/top_level.txt +0 -0
@@ -1,151 +0,0 @@
1
- from __future__ import annotations
2
-
3
- import importlib
4
- import importlib.metadata
5
- import pkgutil
6
- import re
7
- from types import ModuleType
8
-
9
-
10
- def import_module(package: str) -> ModuleType:
11
- """
12
- Import modules from package name.
13
-
14
- Parameters
15
- ----------
16
- package : str
17
- Package name.
18
-
19
- Returns
20
- -------
21
- ModuleType
22
- Module.
23
- """
24
- try:
25
- return importlib.import_module(package)
26
- except ModuleNotFoundError:
27
- raise ModuleNotFoundError(f"Package {package} not found.")
28
- except Exception as e:
29
- raise e
30
-
31
-
32
- def import_class(module_to_import: str, class_name: str) -> type:
33
- """
34
- Import class from implemented module.
35
-
36
- Parameters
37
- ----------
38
- module_to_import : str
39
- Module name.
40
- class_name : str
41
- Class name.
42
-
43
- Returns
44
- -------
45
- type
46
- Class.
47
- """
48
- module = import_module(module_to_import)
49
- try:
50
- return getattr(module, class_name)
51
- except AttributeError:
52
- raise ModuleNotFoundError(f"Module {module_to_import} has no '{class_name}' class.")
53
-
54
-
55
- def list_runtimes() -> list[str]:
56
- """
57
- List installed runtimes for digitalhub.
58
-
59
- Returns
60
- -------
61
- list
62
- List of installed runtimes names.
63
- """
64
- pattern = r"digitalhub_runtime_.*"
65
- runtimes = []
66
- try:
67
- for _, name, _ in pkgutil.iter_modules():
68
- if re.match(pattern, name):
69
- runtimes.append(name)
70
- return runtimes
71
- except Exception:
72
- raise RuntimeError("Error listing installed runtimes.")
73
-
74
-
75
- def register_runtimes_entities() -> None:
76
- """
77
- Register runtimes and related entities into registry.
78
-
79
- Returns
80
- -------
81
- None
82
- """
83
- for package in list_runtimes():
84
- import_module(package)
85
-
86
-
87
- def register_entities() -> None:
88
- """
89
- Register layer and related entities into registry.
90
-
91
- Returns
92
- -------
93
- None
94
- """
95
- # Try ot import registry from entities.registries module
96
- try:
97
- import_module("digitalhub.entities.registries")
98
- except Exception:
99
- pass
100
-
101
-
102
- def create_info(
103
- root: str,
104
- entity_type: str,
105
- kind: str,
106
- prefix: str,
107
- suffix: str | None = "",
108
- runtime_info: dict | None = None,
109
- ) -> dict:
110
- """
111
- Create entity info.
112
-
113
- Parameters
114
- ----------
115
- root : str
116
- Root module.
117
- entity_type : str
118
- Entity type.
119
- prefix : str
120
- Entity prefix.
121
- suffix : str
122
- Entity suffix.
123
- runtime_info : dict
124
- Runtime info.
125
-
126
- Returns
127
- -------
128
- dict
129
- Entity info.
130
- """
131
- dict_ = {
132
- "entity_type": entity_type,
133
- "spec": {
134
- "module": f"{root}.{entity_type}.{kind}.spec",
135
- "class_name": f"{prefix}Spec{suffix}",
136
- "parameters_validator": f"{prefix}Validator{suffix}",
137
- },
138
- "status": {
139
- "module": f"{root}.{entity_type}.{kind}.status",
140
- "class_name": f"{prefix}Status{suffix}",
141
- },
142
- "metadata": {
143
- "module": "digitalhub.entities._base.metadata",
144
- "class_name": "Metadata",
145
- },
146
- }
147
- # Add runtime only if provided
148
- # (in functions, tasks, runs and workflows)
149
- if runtime_info is not None:
150
- dict_["runtime"] = runtime_info
151
- return dict_
File without changes
File without changes
File without changes
File without changes
File without changes