digitalhub 0.10.0b4__py3-none-any.whl → 0.10.0b6__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.
- digitalhub/client/_base/api_builder.py +1 -1
- digitalhub/client/_base/client.py +22 -0
- digitalhub/client/_base/params_builder.py +16 -0
- digitalhub/client/dhcore/api_builder.py +4 -3
- digitalhub/client/dhcore/client.py +4 -0
- digitalhub/client/dhcore/configurator.py +26 -4
- digitalhub/client/dhcore/params_builder.py +174 -0
- digitalhub/client/local/api_builder.py +4 -1
- digitalhub/client/local/client.py +6 -0
- digitalhub/client/local/params_builder.py +116 -0
- digitalhub/configurator/configurator.py +10 -9
- digitalhub/entities/_base/context/entity.py +4 -4
- digitalhub/entities/_base/executable/entity.py +2 -2
- digitalhub/entities/_base/material/entity.py +3 -3
- digitalhub/entities/_base/unversioned/entity.py +2 -2
- digitalhub/entities/_base/versioned/entity.py +2 -2
- digitalhub/entities/_commons/enums.py +1 -0
- digitalhub/entities/_commons/metrics.py +164 -0
- digitalhub/entities/_commons/types.py +5 -0
- digitalhub/entities/_commons/utils.py +0 -26
- digitalhub/entities/_processors/base.py +527 -0
- digitalhub/entities/{_operations/processor.py → _processors/context.py} +94 -716
- digitalhub/entities/_processors/utils.py +158 -0
- digitalhub/entities/artifact/crud.py +10 -10
- digitalhub/entities/dataitem/crud.py +10 -10
- digitalhub/entities/dataitem/utils.py +2 -1
- digitalhub/entities/function/crud.py +9 -9
- digitalhub/entities/model/_base/entity.py +26 -78
- digitalhub/entities/model/_base/status.py +1 -1
- digitalhub/entities/model/crud.py +10 -10
- digitalhub/entities/project/_base/entity.py +317 -9
- digitalhub/entities/project/crud.py +10 -9
- digitalhub/entities/run/_base/entity.py +32 -84
- digitalhub/entities/run/_base/status.py +1 -1
- digitalhub/entities/run/crud.py +8 -8
- digitalhub/entities/secret/_base/entity.py +3 -3
- digitalhub/entities/secret/crud.py +9 -9
- digitalhub/entities/task/_base/entity.py +4 -4
- digitalhub/entities/task/_base/models.py +10 -0
- digitalhub/entities/task/crud.py +8 -8
- digitalhub/entities/workflow/crud.py +9 -9
- digitalhub/factory/utils.py +9 -9
- digitalhub/readers/data/pandas/reader.py +9 -9
- digitalhub/stores/s3/configurator.py +1 -1
- digitalhub/stores/sql/configurator.py +1 -1
- digitalhub/{readers/data/pandas → utils}/enums.py +1 -1
- digitalhub/utils/git_utils.py +16 -9
- digitalhub/utils/types.py +0 -1
- {digitalhub-0.10.0b4.dist-info → digitalhub-0.10.0b6.dist-info}/METADATA +1 -4
- {digitalhub-0.10.0b4.dist-info → digitalhub-0.10.0b6.dist-info}/RECORD +53 -49
- digitalhub/entities/_base/project/entity.py +0 -341
- digitalhub/entities/_commons/models.py +0 -13
- digitalhub/entities/_operations/__init__.py +0 -0
- /digitalhub/entities/{_base/project → _processors}/__init__.py +0 -0
- {digitalhub-0.10.0b4.dist-info → digitalhub-0.10.0b6.dist-info}/WHEEL +0 -0
- {digitalhub-0.10.0b4.dist-info → digitalhub-0.10.0b6.dist-info}/licenses/LICENSE.txt +0 -0
|
@@ -3,26 +3,29 @@ digitalhub/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU
|
|
|
3
3
|
digitalhub/client/api.py,sha256=JwYh4rFUaTeZ2MvUdhQiWEG1AZbrZjRYMhJHoDRnk30,586
|
|
4
4
|
digitalhub/client/builder.py,sha256=83PoMCus4s4nbkoWmvcjW2hIpXbNx74sUW93wgQgbuo,1195
|
|
5
5
|
digitalhub/client/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
|
-
digitalhub/client/_base/api_builder.py,sha256=
|
|
7
|
-
digitalhub/client/_base/client.py,sha256=
|
|
6
|
+
digitalhub/client/_base/api_builder.py,sha256=2-3JPP9Q1xYvBbrxFYaw2cChC6zwDregpRtFwuowdF8,380
|
|
7
|
+
digitalhub/client/_base/client.py,sha256=kyjW3Md6d-XaZxP29sqek6o34TSqDe9PPKjtHuy1Dls,3651
|
|
8
8
|
digitalhub/client/_base/key_builder.py,sha256=xl3jM7z2eLP6HfPXusmZyLqsvfKHQfxfZ3SWPS7MHuk,1155
|
|
9
|
+
digitalhub/client/_base/params_builder.py,sha256=lCk4WE6DqvGP7-cx0anZEC8GtwsA7win7MVqACQQF9g,427
|
|
9
10
|
digitalhub/client/dhcore/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
-
digitalhub/client/dhcore/api_builder.py,sha256=
|
|
11
|
-
digitalhub/client/dhcore/client.py,sha256=
|
|
12
|
-
digitalhub/client/dhcore/configurator.py,sha256=
|
|
11
|
+
digitalhub/client/dhcore/api_builder.py,sha256=Q4uON6BgzIpkGQ5Kik_YFXfCR_h0bvof_Z9i2-2J8w0,3968
|
|
12
|
+
digitalhub/client/dhcore/client.py,sha256=41tSTloG9XvCZKOi9G5zJTa6jiQYO-cgOCdO1nCQGkI,9806
|
|
13
|
+
digitalhub/client/dhcore/configurator.py,sha256=O7iK2ye1Jd53lZK48IaDv669FK98oVf2xePwiDcFLnE,11830
|
|
13
14
|
digitalhub/client/dhcore/enums.py,sha256=kaVXZTTa2WmsFbcc1CKWNLOM0JtUtcjL-KpspnTOhEE,523
|
|
14
15
|
digitalhub/client/dhcore/error_parser.py,sha256=GJUUkhp12cvC_LBIrC0teh4msmyb5WFxY2g4WNOkUwM,3305
|
|
15
16
|
digitalhub/client/dhcore/key_builder.py,sha256=VyyHk18rs1z8FKoRXGD2glb_WCipCWoYsS50_jYQpC4,1317
|
|
16
17
|
digitalhub/client/dhcore/models.py,sha256=WX53m8B9YiUqebH9ZZuUm2fhIWGoqHkagrHn3swOQDI,642
|
|
18
|
+
digitalhub/client/dhcore/params_builder.py,sha256=vfBScG9SK8iQOdAhX3bCGcmovF4G0b5FTrQ6_ZbfRQE,5652
|
|
17
19
|
digitalhub/client/dhcore/utils.py,sha256=w2hcjS-qPtf3faUq6_r5_Te7G22keTk3p29EQQ93mVs,1878
|
|
18
20
|
digitalhub/client/local/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
19
|
-
digitalhub/client/local/api_builder.py,sha256=
|
|
20
|
-
digitalhub/client/local/client.py,sha256=
|
|
21
|
+
digitalhub/client/local/api_builder.py,sha256=RSA4mRQe9UJOAZ2PG-3zBIQqFe75-mrJCkWz0RlOj-I,3029
|
|
22
|
+
digitalhub/client/local/client.py,sha256=Rai1THSVKHVS4AvqKXLXLsa_WEbja2juWDCFm9q8s-8,18080
|
|
21
23
|
digitalhub/client/local/enums.py,sha256=FCwzQnYClB8Z7h8hrd_CXV78gHs15eawwLPGtCYzNl4,150
|
|
22
24
|
digitalhub/client/local/key_builder.py,sha256=jO5RHMRe5bxygX3rbD7TOqBafvO6FJcEOymsnJbjyuY,1316
|
|
25
|
+
digitalhub/client/local/params_builder.py,sha256=BgDEu6feqFsaTX8rpXMibhErm1lLxtP6gIYrLoAJm5U,3474
|
|
23
26
|
digitalhub/configurator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
27
|
digitalhub/configurator/api.py,sha256=xg0HilqnZIe9XUz65QoTP5yQxOyeWzo_xC9YpMNUDVY,553
|
|
25
|
-
digitalhub/configurator/configurator.py,sha256=
|
|
28
|
+
digitalhub/configurator/configurator.py,sha256=ShYktRJSRQFxLhCB_KaBXUPYamEIZ1iUseOffxPzPLM,4532
|
|
26
29
|
digitalhub/configurator/credentials_store.py,sha256=kiaCm37Sl1SN9OaMbsfZA1l1a9Xg6R6a00H7Upcf8Vg,1508
|
|
27
30
|
digitalhub/configurator/ini_module.py,sha256=_FziztUjs0Y7MfbO1utmxWm75vx4yAm4OTyQoOgqYTQ,1828
|
|
28
31
|
digitalhub/context/api.py,sha256=un-_HU7JC3t-eQKleVJ9cCDS8BtQFRHSrP3VDHs3gPU,1099
|
|
@@ -34,7 +37,7 @@ digitalhub/entities/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJW
|
|
|
34
37
|
digitalhub/entities/_base/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
35
38
|
digitalhub/entities/_base/_base/entity.py,sha256=aHZiuCyHo6zPSRuwTFLu2qGkTHGd2k8EAJlnbcJq_p4,2174
|
|
36
39
|
digitalhub/entities/_base/context/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
37
|
-
digitalhub/entities/_base/context/entity.py,sha256=
|
|
40
|
+
digitalhub/entities/_base/context/entity.py,sha256=er9eqY4aqpTOvBwBxVUeeqbTYnMXbc4jrF6GAipSFWc,3300
|
|
38
41
|
digitalhub/entities/_base/entity/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
42
|
digitalhub/entities/_base/entity/builder.py,sha256=caUFJeLSvOTNKwnOZkyKW6BdyWUNYaGesk0ZwXJxX88,4556
|
|
40
43
|
digitalhub/entities/_base/entity/entity.py,sha256=BFVKE5CToh4JOdwseAGMhdpoCiD3kaGRhNA9SuRCixE,3223
|
|
@@ -48,30 +51,31 @@ digitalhub/entities/_base/entity/_constructors/spec.py,sha256=zEC7MDDKTf8nIIgR5s
|
|
|
48
51
|
digitalhub/entities/_base/entity/_constructors/status.py,sha256=wetvpnQTtkjZ-pMO2jFnGyLbM_Ve-k9lXGl0f-eI20M,1190
|
|
49
52
|
digitalhub/entities/_base/entity/_constructors/uuid.py,sha256=QzG0nsVpGU2UDD5CjpkOM2RfVaCHPdLp2HoQt8TM_tk,555
|
|
50
53
|
digitalhub/entities/_base/executable/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
51
|
-
digitalhub/entities/_base/executable/entity.py,sha256=
|
|
54
|
+
digitalhub/entities/_base/executable/entity.py,sha256=TdaNCJY35Dt1ZdxfbqWFR_OjRNhVZpHLZpIJg4tNx2I,10093
|
|
52
55
|
digitalhub/entities/_base/material/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
53
|
-
digitalhub/entities/_base/material/entity.py,sha256=
|
|
56
|
+
digitalhub/entities/_base/material/entity.py,sha256=oINSX884fwdVl_LW7X4yO4B7XFI0WmWMVhnBK55ajzY,7010
|
|
54
57
|
digitalhub/entities/_base/material/spec.py,sha256=jL1OohnYhUSrdTaFF3Rkw817jIjNY0ewm1wB3tgQ_9c,436
|
|
55
58
|
digitalhub/entities/_base/material/status.py,sha256=mp5C-5JgfLNYPWdCZXYsaI3Ptu32RW9r_BQgvUjXELA,412
|
|
56
59
|
digitalhub/entities/_base/material/utils.py,sha256=TQzzwjaTdVUmeCTIiScSAEWJtrJFLv3q5C3-ID3sPjA,2446
|
|
57
|
-
digitalhub/entities/_base/project/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
58
|
-
digitalhub/entities/_base/project/entity.py,sha256=MwK80OCNKN_vxnPajJhErdLS4VQfIWydmfQrscf5OCc,10621
|
|
59
60
|
digitalhub/entities/_base/runtime_entity/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
60
61
|
digitalhub/entities/_base/runtime_entity/builder.py,sha256=vZBftdOrAUICoEJXbqOyozrbMxNRqqoVVxDVjKs2GnI,2414
|
|
61
62
|
digitalhub/entities/_base/unversioned/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
62
63
|
digitalhub/entities/_base/unversioned/builder.py,sha256=ChEhRXlu1BGNmMHOMu9i9kVMu3uFtwxmgiTO4Il_5oU,1834
|
|
63
|
-
digitalhub/entities/_base/unversioned/entity.py,sha256=
|
|
64
|
+
digitalhub/entities/_base/unversioned/entity.py,sha256=sQ-KXqXmksJd9enNKFdOGO73hJSCzS46OE9goBa8RYg,876
|
|
64
65
|
digitalhub/entities/_base/versioned/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
65
66
|
digitalhub/entities/_base/versioned/builder.py,sha256=0niRbqpCnHqBK0hTQxdrtUl43BbJuGXMLVbruhpUUuU,1896
|
|
66
|
-
digitalhub/entities/_base/versioned/entity.py,sha256=
|
|
67
|
+
digitalhub/entities/_base/versioned/entity.py,sha256=h4YX6smpPjIVW8DOVdRYW-abOcoJ_F0OkozLhLxpjWI,899
|
|
67
68
|
digitalhub/entities/_commons/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
68
|
-
digitalhub/entities/_commons/enums.py,sha256=
|
|
69
|
-
digitalhub/entities/_commons/
|
|
70
|
-
digitalhub/entities/_commons/
|
|
71
|
-
digitalhub/entities/
|
|
72
|
-
digitalhub/entities/
|
|
69
|
+
digitalhub/entities/_commons/enums.py,sha256=iis8VwpDQd-CQM7QI22OMUqedzchTlFtQuu9I3I-0Bw,1929
|
|
70
|
+
digitalhub/entities/_commons/metrics.py,sha256=SYb980t9smzJVUWGqE4Ug0t-0wPXYJZ_nJRi_9bhcpw,3405
|
|
71
|
+
digitalhub/entities/_commons/types.py,sha256=bwK-2iQHL2gdtOPfRcXWBRWqqS1Tic6ywRQsJSocn9c,118
|
|
72
|
+
digitalhub/entities/_commons/utils.py,sha256=354ZL5wKvijJ2A25pM0xK5JMhgTyZF6urjHZNjosINI,1846
|
|
73
|
+
digitalhub/entities/_processors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
74
|
+
digitalhub/entities/_processors/base.py,sha256=u6CD93SsZIOXmZ04pc27-ADGLzYFDgkarElJxq2adzY,13603
|
|
75
|
+
digitalhub/entities/_processors/context.py,sha256=DxyetY6igBdZy-aEfIJkDHIYK1UPnIOBd5N7vodq6vU,33313
|
|
76
|
+
digitalhub/entities/_processors/utils.py,sha256=LMlzsWF1vs-E3J5o9RzEuwf4_zznWyErtUki6DW_usA,3780
|
|
73
77
|
digitalhub/entities/artifact/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
74
|
-
digitalhub/entities/artifact/crud.py,sha256=
|
|
78
|
+
digitalhub/entities/artifact/crud.py,sha256=smyZLWfkBEH1pxwFJXhoqfFpLrKeeWTqXmahyPj8QAY,7983
|
|
75
79
|
digitalhub/entities/artifact/utils.py,sha256=Sqjqi5VxIFnX7AFjUIPAhbZOV3ieqYJN8rgVKSfmN7I,1323
|
|
76
80
|
digitalhub/entities/artifact/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
77
81
|
digitalhub/entities/artifact/_base/builder.py,sha256=Ig9rxHkzhQMNEkcfwl9m0r33KZ3pjmQzW_lAbvsK7xs,2256
|
|
@@ -84,8 +88,8 @@ digitalhub/entities/artifact/artifact/entity.py,sha256=hj6UlJMWnWimqizhKGcKpvOpc
|
|
|
84
88
|
digitalhub/entities/artifact/artifact/spec.py,sha256=XAnk0YPlLEIglPZ9cP5-gJwJ5f143pJRHwl2tdBuVcw,632
|
|
85
89
|
digitalhub/entities/artifact/artifact/status.py,sha256=x-lTgO2KkjwzlJnEhIfUtF9rzJ1DTIAd3-Hn6ZeLRqo,305
|
|
86
90
|
digitalhub/entities/dataitem/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
87
|
-
digitalhub/entities/dataitem/crud.py,sha256=
|
|
88
|
-
digitalhub/entities/dataitem/utils.py,sha256=
|
|
91
|
+
digitalhub/entities/dataitem/crud.py,sha256=_lV168-zjmaPmsi6oPjZOLttqqt9SV4CZqoGBwVYokk,8580
|
|
92
|
+
digitalhub/entities/dataitem/utils.py,sha256=pwlk7IAT1KTa18VuOfCK2IZvRRCOU4eiWGaSwL5SYA4,4387
|
|
89
93
|
digitalhub/entities/dataitem/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
90
94
|
digitalhub/entities/dataitem/_base/builder.py,sha256=XZ5Ul-aBkx6ygpN9rhjNQOD-6jzJhulyM0WCD-f3big,2256
|
|
91
95
|
digitalhub/entities/dataitem/_base/entity.py,sha256=J8G7Xm_AKETg02RtNHlUyM-bmvT__HKu1Npv4Od037A,945
|
|
@@ -109,20 +113,20 @@ digitalhub/entities/dataitem/table/spec.py,sha256=5boOI9zhIvuwIQo0th0E2941_rQEPI
|
|
|
109
113
|
digitalhub/entities/dataitem/table/status.py,sha256=28-_LoSg84x4OwLbRungCHk-ObuobZ5vKuzk1NoBGZA,198
|
|
110
114
|
digitalhub/entities/dataitem/table/utils.py,sha256=sctzcQeTPpW_YJC4rquu_J4rjv_NR6EoJTqMeAIPNvA,2447
|
|
111
115
|
digitalhub/entities/function/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
112
|
-
digitalhub/entities/function/crud.py,sha256=
|
|
116
|
+
digitalhub/entities/function/crud.py,sha256=NZ7nbCdpMW2shGD1AWx2CKpE_eX_v7bVtDC0EZwJmJc,6662
|
|
113
117
|
digitalhub/entities/function/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
114
118
|
digitalhub/entities/function/_base/builder.py,sha256=xTVOpH3GYU-BqtzMEuI3uMtLLvF9IYfrVYMVPkkJc2g,2035
|
|
115
119
|
digitalhub/entities/function/_base/entity.py,sha256=YYFxtLAZEhcWOzGlGjqRPXmGRb8wBK1KOXyVPo9ZGSw,3093
|
|
116
120
|
digitalhub/entities/function/_base/spec.py,sha256=SjCtp3JBUTPTLMY_TE8wM1HPKVl7jH_wFEqQXBj1rfo,274
|
|
117
121
|
digitalhub/entities/function/_base/status.py,sha256=N-Z1hw13qV7kWFJLQPaH3rRZ2z7AvZeuWYER95lG344,170
|
|
118
122
|
digitalhub/entities/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
119
|
-
digitalhub/entities/model/crud.py,sha256=
|
|
123
|
+
digitalhub/entities/model/crud.py,sha256=7B1kzXNNB3Ox1RLhhcVhmtiCfua6d5uCpuJY4e5o1Bc,7764
|
|
120
124
|
digitalhub/entities/model/utils.py,sha256=NNzD2AcIJzmV_Jo_8k5ZcSp2arKcZ07CCIYKn2lvoKM,1320
|
|
121
125
|
digitalhub/entities/model/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
122
126
|
digitalhub/entities/model/_base/builder.py,sha256=emYkEey98ddxcj_lHWsQG0cAu2BEDastvSrHVtoa6oU,2235
|
|
123
|
-
digitalhub/entities/model/_base/entity.py,sha256=
|
|
127
|
+
digitalhub/entities/model/_base/entity.py,sha256=PqH7E8IVLij86DQZFPwVW-4pOCDZtAqiNXPXmUvzW3w,4167
|
|
124
128
|
digitalhub/entities/model/_base/spec.py,sha256=enybK9mfNGncuMyQLL-HYeHkoe2Karau4R1zaSsX9Hc,865
|
|
125
|
-
digitalhub/entities/model/_base/status.py,sha256
|
|
129
|
+
digitalhub/entities/model/_base/status.py,sha256=iL3mp8DPjzqmm1nOcF9zYi6o_OdaVkZx1V26NOucirs,466
|
|
126
130
|
digitalhub/entities/model/huggingface/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
127
131
|
digitalhub/entities/model/huggingface/builder.py,sha256=JxPosF8QOaq1qxrWCD5wqaR2dnDXWb33-gxfhPuTFZ8,749
|
|
128
132
|
digitalhub/entities/model/huggingface/entity.py,sha256=BnBWrAmTA8cEM47sqpxQeCLCl4Wu7CbpFKhYvf8qLaA,873
|
|
@@ -146,38 +150,38 @@ digitalhub/entities/model/sklearn/entity.py,sha256=pPy4mOqOmbkqNkKFUnhrsIQNt2mGN
|
|
|
146
150
|
digitalhub/entities/model/sklearn/spec.py,sha256=Md0aKlfNHZ2fhZbJgp9wZxF0Hu6XIkcniQHCgwoRdkk,301
|
|
147
151
|
digitalhub/entities/model/sklearn/status.py,sha256=eqkPPtERX-6_BjPb_GD8j1FIeavpl43k-dfXZGqzGI0,187
|
|
148
152
|
digitalhub/entities/project/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
149
|
-
digitalhub/entities/project/crud.py,sha256=
|
|
153
|
+
digitalhub/entities/project/crud.py,sha256=Pzm3PhIVvxlO0EPog5uivcy7j8Q-Q8gIielj-H3V4o0,8704
|
|
150
154
|
digitalhub/entities/project/utils.py,sha256=zwm82RaIVLJNYrg70jRnGdsP0IVWW86y3OrHmakeBjM,1011
|
|
151
155
|
digitalhub/entities/project/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
152
156
|
digitalhub/entities/project/_base/builder.py,sha256=N1YPFZra7KMhmBynbeBWtvn3TwiBaBmSE5FfDPyUUG8,3645
|
|
153
|
-
digitalhub/entities/project/_base/entity.py,sha256=
|
|
157
|
+
digitalhub/entities/project/_base/entity.py,sha256=5zI4W2v1AnPVCocLK2Z7cNu5bJkq-kGm9wEanCDeYGE,57139
|
|
154
158
|
digitalhub/entities/project/_base/spec.py,sha256=t92M9KzEH986oybui7ZW924VhmqTcpVbvreyfpylwSs,1435
|
|
155
159
|
digitalhub/entities/project/_base/status.py,sha256=w1Hj_yFwr_5X7ZH7SmtZRto4qUdCWb010viFfvbqX48,168
|
|
156
160
|
digitalhub/entities/run/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
157
|
-
digitalhub/entities/run/crud.py,sha256=
|
|
161
|
+
digitalhub/entities/run/crud.py,sha256=M5BYlDgPA7Sl-t3N5MzkbJOPyIa_ilwnUM4uOe72qfg,4937
|
|
158
162
|
digitalhub/entities/run/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
159
163
|
digitalhub/entities/run/_base/builder.py,sha256=e4P4gegD1DjHv_-Rhe3bIkGfRwgRbC8J6hdSSw2M8b4,2454
|
|
160
|
-
digitalhub/entities/run/_base/entity.py,sha256=
|
|
164
|
+
digitalhub/entities/run/_base/entity.py,sha256=2izcK3xruFP24RCsxxTJR8uUnSa2eKnkzZy6yGhNr9U,10319
|
|
161
165
|
digitalhub/entities/run/_base/spec.py,sha256=xUjFRxGopUMwOPY8L-8kdFtOFypGGY4wrbLPrt6ycGI,1722
|
|
162
|
-
digitalhub/entities/run/_base/status.py,sha256=
|
|
166
|
+
digitalhub/entities/run/_base/status.py,sha256=vQWgDRTtUFJThdpv8lh4cHreg3uZeusP0RJTWe9PV5k,530
|
|
163
167
|
digitalhub/entities/secret/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
164
|
-
digitalhub/entities/secret/crud.py,sha256=
|
|
168
|
+
digitalhub/entities/secret/crud.py,sha256=dSkSnQdfnfxtPMLRYtHGIJ9k8_9kzFJ0BYTDWqGjKWo,6972
|
|
165
169
|
digitalhub/entities/secret/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
166
170
|
digitalhub/entities/secret/_base/builder.py,sha256=XkSjyofbD_5fPLF05qSMRaD3xor7EzklS2Wu1qRxiYE,2195
|
|
167
|
-
digitalhub/entities/secret/_base/entity.py,sha256=
|
|
171
|
+
digitalhub/entities/secret/_base/entity.py,sha256=1J5S3AmiGYjOSHGXzU48h3-khrJHVD54k8UHHwpeeWM,1820
|
|
168
172
|
digitalhub/entities/secret/_base/spec.py,sha256=8xbvaLOlu79-SlrQW0MCfYIfxR7mkac2l1S-sbxbiY8,776
|
|
169
173
|
digitalhub/entities/secret/_base/status.py,sha256=TK9CUKA6eg9qegqgR9t-u1g-vEeFGB6v5dN9YJNukw8,166
|
|
170
174
|
digitalhub/entities/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
171
|
-
digitalhub/entities/task/crud.py,sha256
|
|
175
|
+
digitalhub/entities/task/crud.py,sha256=-tQNtWU7r3nfoVn3WmmrHBvSyHpGqQIa1_3Ges4kh5A,5395
|
|
172
176
|
digitalhub/entities/task/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
173
177
|
digitalhub/entities/task/_base/builder.py,sha256=21WEbycCR8yaOPcLLcAITaoQ4ZmBNXJXB-Oy0VfSPrg,2358
|
|
174
|
-
digitalhub/entities/task/_base/entity.py,sha256=
|
|
175
|
-
digitalhub/entities/task/_base/models.py,sha256=
|
|
178
|
+
digitalhub/entities/task/_base/entity.py,sha256=RSwgndyxeveYru6AsC4TGwbGt4JN2LAQ0RRTTtdNNq8,3561
|
|
179
|
+
digitalhub/entities/task/_base/models.py,sha256=Pjx6R8o5Q_zEqk47vT-kzK6YZoWPGtrBBWJgomRmwDU,5326
|
|
176
180
|
digitalhub/entities/task/_base/spec.py,sha256=4JsbQxx05UYjAerSNBCrLSjwMLYeMSqgPIYdkJhH7ik,2500
|
|
177
181
|
digitalhub/entities/task/_base/status.py,sha256=FCSSQscQ0dHEpXdc5vSrIkTXon9FNNOr0M1KVh2ZVAA,162
|
|
178
182
|
digitalhub/entities/task/_base/utils.py,sha256=faeAN7r_5q0KWDj1vrbVvFMcCpeMw7fK7vGScSpFZCI,448
|
|
179
183
|
digitalhub/entities/workflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
180
|
-
digitalhub/entities/workflow/crud.py,sha256=
|
|
184
|
+
digitalhub/entities/workflow/crud.py,sha256=pOl2JjKTqTl6-iermH53nO6hUElSCsLYmx3TYLenhmI,6587
|
|
181
185
|
digitalhub/entities/workflow/_base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
182
186
|
digitalhub/entities/workflow/_base/builder.py,sha256=wRgot2pbXjc-Cw549uDo1zFOGKdE7wVqxCboeNoXe-Q,2035
|
|
183
187
|
digitalhub/entities/workflow/_base/entity.py,sha256=yQKsoJqWRRgYVQJ0wWvu4krx1DpRM9JL4Irb_874Kqs,2516
|
|
@@ -186,7 +190,7 @@ digitalhub/entities/workflow/_base/status.py,sha256=W0j0CNdu9o2vbk0awpnDrpgwf_fZ
|
|
|
186
190
|
digitalhub/factory/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
187
191
|
digitalhub/factory/api.py,sha256=tTlALvPLPE-vjdPByAXXXjIEGpm4-_zB08A_F3be4f8,5479
|
|
188
192
|
digitalhub/factory/factory.py,sha256=4SYBK3q1EmVjxgiZnnGNqDJtQSs4RPatftx6duD9rEU,6482
|
|
189
|
-
digitalhub/factory/utils.py,sha256=
|
|
193
|
+
digitalhub/factory/utils.py,sha256=PqdqIG7lfH7k4Qw53d120OiBKPXInwnHhCn-Dt9BrDU,2397
|
|
190
194
|
digitalhub/readers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
191
195
|
digitalhub/readers/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
192
196
|
digitalhub/readers/data/api.py,sha256=XjHNdiXclhxBat2DtWfWWIK-0z-cUZ9RvbQar6Q3pKY,1844
|
|
@@ -196,8 +200,7 @@ digitalhub/readers/data/_base/builder.py,sha256=Fv8n5kcXpAb4gSuUAWWS394bx_tvZW_9
|
|
|
196
200
|
digitalhub/readers/data/_base/reader.py,sha256=D8Vfcys4uIlXnVbyKh6KI58b_tXSmiN94YzX-WDthrY,1754
|
|
197
201
|
digitalhub/readers/data/pandas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
198
202
|
digitalhub/readers/data/pandas/builder.py,sha256=GskCPKJ33-YXiGEqmlasIyFMiy2F_ged22NxxncivCg,682
|
|
199
|
-
digitalhub/readers/data/pandas/
|
|
200
|
-
digitalhub/readers/data/pandas/reader.py,sha256=KtU178Yt4XoEdpbrqnzGlUOlaBkK9N74uqHj5wMr3vA,7944
|
|
203
|
+
digitalhub/readers/data/pandas/reader.py,sha256=7Ba1A5vUxo0Wx-zkaCLj6ZFyknP40vnf9VZV1CTYmc4,7974
|
|
201
204
|
digitalhub/readers/query/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
202
205
|
digitalhub/runtimes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
203
206
|
digitalhub/runtimes/_base.py,sha256=uDvSXAEytZr-BFpj1BA59vdERBk79j5pTDiG0__tazA,2510
|
|
@@ -213,26 +216,27 @@ digitalhub/stores/local/store.py,sha256=aljhQYaILZlj_qltCcsLVn1pTZYPmgs0Jqc26VRH
|
|
|
213
216
|
digitalhub/stores/remote/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
214
217
|
digitalhub/stores/remote/store.py,sha256=wxB0t3zjKDSFgtKbT1-yPLT_Qm07UkpBCpZfHbD7BzM,6181
|
|
215
218
|
digitalhub/stores/s3/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
216
|
-
digitalhub/stores/s3/configurator.py,sha256=
|
|
219
|
+
digitalhub/stores/s3/configurator.py,sha256=qoj3sZCTwojUw5b-8xYyDTC9eRwgjqIHnVbSxWj3hFY,3734
|
|
217
220
|
digitalhub/stores/s3/enums.py,sha256=tmSavz83jr6SBW-Gqn4D21TJpFytxvbtbW63htmZG2A,392
|
|
218
221
|
digitalhub/stores/s3/models.py,sha256=qeXeL7iP76EBO35wzP6bYeMj-sBOY634Tjwx8h3Di2g,371
|
|
219
222
|
digitalhub/stores/s3/store.py,sha256=ggmtwsAYhhBJUgbIh22vXJUSJTHloCszyEQqF64g1sk,19237
|
|
220
223
|
digitalhub/stores/s3/utils.py,sha256=5ATkIRThtssu52dPrkWnK-nhD5pc6rlrHLNofjiQzt4,1500
|
|
221
224
|
digitalhub/stores/sql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
222
|
-
digitalhub/stores/sql/configurator.py,sha256=
|
|
225
|
+
digitalhub/stores/sql/configurator.py,sha256=7TLU9mdLzMUsJI39pe-xWqsnzdiAmDmSXBeJG6MEBY8,3182
|
|
223
226
|
digitalhub/stores/sql/enums.py,sha256=FCpmIXxef6SQIX_564a1hYvaSVrpvld8gi7YAv25H-o,284
|
|
224
227
|
digitalhub/stores/sql/models.py,sha256=_itIXoCfRLzUpG0OaM44qbv2u87Lyl5e0tmAXNTvfjQ,349
|
|
225
228
|
digitalhub/stores/sql/store.py,sha256=4i2j8h71E-lrGYI9kUzwLpZfonYjIY1osuTvy0s8CcA,11327
|
|
226
229
|
digitalhub/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
230
|
+
digitalhub/utils/enums.py,sha256=BjsLkUQ15W3KYTRYd0kuut77jTNMDBtTfJbixMReEew,269
|
|
227
231
|
digitalhub/utils/exceptions.py,sha256=CGiRXx6OvYpjg6d9yEn2OvyfF0FA5n1l8uH6loCDoAY,1233
|
|
228
232
|
digitalhub/utils/file_utils.py,sha256=qRb0ETNaQKwBlF5iwflDFlkrku5TvJXHHhxgHtAeS9w,5117
|
|
229
233
|
digitalhub/utils/generic_utils.py,sha256=8JKmfe1UMYqzrqfptMJZ7x-EvD1-zVNLfBcGoVl8Wcg,4870
|
|
230
|
-
digitalhub/utils/git_utils.py,sha256=
|
|
234
|
+
digitalhub/utils/git_utils.py,sha256=6vnZoJnL6uMZj0ZtHj3Tf-NYJsw3V9yitTJooSaFYEg,3407
|
|
231
235
|
digitalhub/utils/io_utils.py,sha256=8jD4Rp_b7LZEpY5JSMxVUowZsnifKnbGpHT5Hijx9-g,3299
|
|
232
236
|
digitalhub/utils/logger.py,sha256=ml3ne6D8wuRdNZ4F6ywmvWotSxjmZWnmKgNiuHb4R5M,437
|
|
233
|
-
digitalhub/utils/types.py,sha256=
|
|
237
|
+
digitalhub/utils/types.py,sha256=x8zXsbivD8vdaNeNRZLKOPvGbz6d-59nncuvO0FsueY,109
|
|
234
238
|
digitalhub/utils/uri_utils.py,sha256=6W3ITWcOwlpmA42rmgld7f2t1RpNF2pYXadWpmEQeBM,3832
|
|
235
|
-
digitalhub-0.10.
|
|
236
|
-
digitalhub-0.10.
|
|
237
|
-
digitalhub-0.10.
|
|
238
|
-
digitalhub-0.10.
|
|
239
|
+
digitalhub-0.10.0b6.dist-info/METADATA,sha256=5A8KN3Gn-s2WxyHJI6KkvKRNS_mkLn-UpAr8ORFrwFA,15058
|
|
240
|
+
digitalhub-0.10.0b6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
241
|
+
digitalhub-0.10.0b6.dist-info/licenses/LICENSE.txt,sha256=qmrTTXPlgU0kSRlRVbjhlyGs1IXs2QPxo_Y-Mn06J0k,11589
|
|
242
|
+
digitalhub-0.10.0b6.dist-info/RECORD,,
|
|
@@ -1,341 +0,0 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
import typing
|
|
4
|
-
from pathlib import Path
|
|
5
|
-
|
|
6
|
-
from digitalhub.client.api import get_client
|
|
7
|
-
from digitalhub.context.api import build_context
|
|
8
|
-
from digitalhub.entities._base.entity.entity import Entity
|
|
9
|
-
from digitalhub.entities._commons.enums import EntityTypes
|
|
10
|
-
from digitalhub.entities._operations.processor import processor
|
|
11
|
-
from digitalhub.factory.api import build_entity_from_dict
|
|
12
|
-
from digitalhub.utils.exceptions import BackendError, EntityAlreadyExistsError, EntityError
|
|
13
|
-
from digitalhub.utils.generic_utils import get_timestamp
|
|
14
|
-
from digitalhub.utils.io_utils import write_yaml
|
|
15
|
-
from digitalhub.utils.uri_utils import has_local_scheme
|
|
16
|
-
|
|
17
|
-
if typing.TYPE_CHECKING:
|
|
18
|
-
from digitalhub.entities._base.context.entity import ContextEntity
|
|
19
|
-
from digitalhub.entities._base.entity.metadata import Metadata
|
|
20
|
-
from digitalhub.entities._base.entity.spec import Spec
|
|
21
|
-
from digitalhub.entities._base.entity.status import Status
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
class ProjectEntity(Entity):
|
|
25
|
-
"""
|
|
26
|
-
Base entity for Project entity.
|
|
27
|
-
Used to abstract a bit by handling I/O CRUD.
|
|
28
|
-
"""
|
|
29
|
-
|
|
30
|
-
def __init__(
|
|
31
|
-
self,
|
|
32
|
-
name: str,
|
|
33
|
-
kind: str,
|
|
34
|
-
metadata: Metadata,
|
|
35
|
-
spec: Spec,
|
|
36
|
-
status: Status,
|
|
37
|
-
user: str | None = None,
|
|
38
|
-
local: bool = False,
|
|
39
|
-
) -> None:
|
|
40
|
-
super().__init__(kind, metadata, spec, status, user)
|
|
41
|
-
self.id = name
|
|
42
|
-
self.name = name
|
|
43
|
-
self.key = processor.build_project_key(self.name, local=local)
|
|
44
|
-
|
|
45
|
-
self._obj_attr.extend(["id", "name"])
|
|
46
|
-
|
|
47
|
-
# Set client
|
|
48
|
-
self._client = get_client(local)
|
|
49
|
-
|
|
50
|
-
# Set context
|
|
51
|
-
build_context(self)
|
|
52
|
-
|
|
53
|
-
##############################
|
|
54
|
-
# Save / Refresh / Export
|
|
55
|
-
##############################
|
|
56
|
-
|
|
57
|
-
def save(self, update: bool = False) -> ProjectEntity:
|
|
58
|
-
"""
|
|
59
|
-
Save entity into backend.
|
|
60
|
-
|
|
61
|
-
Parameters
|
|
62
|
-
----------
|
|
63
|
-
update : bool
|
|
64
|
-
If True, the object will be updated.
|
|
65
|
-
|
|
66
|
-
Returns
|
|
67
|
-
-------
|
|
68
|
-
Project
|
|
69
|
-
Entity saved.
|
|
70
|
-
"""
|
|
71
|
-
if update:
|
|
72
|
-
if self._client.is_local():
|
|
73
|
-
self.metadata.updated = get_timestamp()
|
|
74
|
-
new_obj = processor.update_project_entity(
|
|
75
|
-
entity_type=self.ENTITY_TYPE,
|
|
76
|
-
entity_name=self.name,
|
|
77
|
-
entity_dict=self.to_dict(),
|
|
78
|
-
local=self._client.is_local(),
|
|
79
|
-
)
|
|
80
|
-
else:
|
|
81
|
-
new_obj = processor.create_project_entity(_entity=self)
|
|
82
|
-
self._update_attributes(new_obj)
|
|
83
|
-
return self
|
|
84
|
-
|
|
85
|
-
def refresh(self) -> ProjectEntity:
|
|
86
|
-
"""
|
|
87
|
-
Refresh object from backend.
|
|
88
|
-
|
|
89
|
-
Returns
|
|
90
|
-
-------
|
|
91
|
-
Project
|
|
92
|
-
Project object.
|
|
93
|
-
"""
|
|
94
|
-
new_obj = processor.read_project_entity(
|
|
95
|
-
entity_type=self.ENTITY_TYPE,
|
|
96
|
-
entity_name=self.name,
|
|
97
|
-
local=self._client.is_local(),
|
|
98
|
-
)
|
|
99
|
-
self._update_attributes(new_obj)
|
|
100
|
-
return self
|
|
101
|
-
|
|
102
|
-
def search_entity(
|
|
103
|
-
self,
|
|
104
|
-
query: str | None = None,
|
|
105
|
-
entity_types: list[str] | None = None,
|
|
106
|
-
name: str | None = None,
|
|
107
|
-
kind: str | None = None,
|
|
108
|
-
created: str | None = None,
|
|
109
|
-
updated: str | None = None,
|
|
110
|
-
description: str | None = None,
|
|
111
|
-
labels: list[str] | None = None,
|
|
112
|
-
**kwargs,
|
|
113
|
-
) -> list[ContextEntity]:
|
|
114
|
-
"""
|
|
115
|
-
Search objects from backend.
|
|
116
|
-
|
|
117
|
-
Parameters
|
|
118
|
-
----------
|
|
119
|
-
query : str
|
|
120
|
-
Search query.
|
|
121
|
-
entity_types : list[str]
|
|
122
|
-
Entity types.
|
|
123
|
-
name : str
|
|
124
|
-
Entity name.
|
|
125
|
-
kind : str
|
|
126
|
-
Entity kind.
|
|
127
|
-
created : str
|
|
128
|
-
Entity creation date.
|
|
129
|
-
updated : str
|
|
130
|
-
Entity update date.
|
|
131
|
-
description : str
|
|
132
|
-
Entity description.
|
|
133
|
-
labels : list[str]
|
|
134
|
-
Entity labels.
|
|
135
|
-
**kwargs : dict
|
|
136
|
-
Parameters to pass to the API call.
|
|
137
|
-
|
|
138
|
-
Returns
|
|
139
|
-
-------
|
|
140
|
-
list[ContextEntity]
|
|
141
|
-
List of object instances.
|
|
142
|
-
"""
|
|
143
|
-
objs = processor.search_entity(
|
|
144
|
-
self.name,
|
|
145
|
-
query=query,
|
|
146
|
-
entity_types=entity_types,
|
|
147
|
-
name=name,
|
|
148
|
-
kind=kind,
|
|
149
|
-
created=created,
|
|
150
|
-
updated=updated,
|
|
151
|
-
description=description,
|
|
152
|
-
labels=labels,
|
|
153
|
-
**kwargs,
|
|
154
|
-
)
|
|
155
|
-
self.refresh()
|
|
156
|
-
return objs
|
|
157
|
-
|
|
158
|
-
def export(self) -> str:
|
|
159
|
-
"""
|
|
160
|
-
Export object as a YAML file in the context folder.
|
|
161
|
-
If the objects are not embedded, the objects are exported as a YAML file.
|
|
162
|
-
|
|
163
|
-
Returns
|
|
164
|
-
-------
|
|
165
|
-
str
|
|
166
|
-
Exported filepath.
|
|
167
|
-
"""
|
|
168
|
-
obj = self._refresh_to_dict()
|
|
169
|
-
pth = Path(self.spec.context) / f"{self.ENTITY_TYPE}s-{self.name}.yaml"
|
|
170
|
-
obj = self._export_not_embedded(obj)
|
|
171
|
-
write_yaml(pth, obj)
|
|
172
|
-
return str(pth)
|
|
173
|
-
|
|
174
|
-
def _refresh_to_dict(self) -> dict:
|
|
175
|
-
"""
|
|
176
|
-
Try to refresh object to collect entities related to project.
|
|
177
|
-
|
|
178
|
-
Returns
|
|
179
|
-
-------
|
|
180
|
-
dict
|
|
181
|
-
Entity object in dictionary format.
|
|
182
|
-
"""
|
|
183
|
-
try:
|
|
184
|
-
return self.refresh().to_dict()
|
|
185
|
-
except BackendError:
|
|
186
|
-
return self.to_dict()
|
|
187
|
-
|
|
188
|
-
def _export_not_embedded(self, obj: dict) -> dict:
|
|
189
|
-
"""
|
|
190
|
-
Export project objects if not embedded.
|
|
191
|
-
|
|
192
|
-
Parameters
|
|
193
|
-
----------
|
|
194
|
-
obj : dict
|
|
195
|
-
Project object in dictionary format.
|
|
196
|
-
|
|
197
|
-
Returns
|
|
198
|
-
-------
|
|
199
|
-
dict
|
|
200
|
-
Updatated project object in dictionary format with referenced entities.
|
|
201
|
-
"""
|
|
202
|
-
# Cycle over entity types
|
|
203
|
-
for entity_type in self._get_entity_types():
|
|
204
|
-
# Entity types are stored as a list of entities
|
|
205
|
-
for idx, entity in enumerate(obj.get("spec", {}).get(entity_type, [])):
|
|
206
|
-
# Export entity if not embedded is in metadata, else do nothing
|
|
207
|
-
if not self._is_embedded(entity):
|
|
208
|
-
# Get entity object from backend
|
|
209
|
-
ent = processor.read_context_entity(entity["key"])
|
|
210
|
-
|
|
211
|
-
# Export and store ref in object metadata inside project
|
|
212
|
-
pth = ent.export()
|
|
213
|
-
obj["spec"][entity_type][idx]["metadata"]["ref"] = pth
|
|
214
|
-
|
|
215
|
-
# Return updated object
|
|
216
|
-
return obj
|
|
217
|
-
|
|
218
|
-
def _import_entities(self, obj: dict) -> None:
|
|
219
|
-
"""
|
|
220
|
-
Import project entities.
|
|
221
|
-
|
|
222
|
-
Parameters
|
|
223
|
-
----------
|
|
224
|
-
obj : dict
|
|
225
|
-
Project object in dictionary format.
|
|
226
|
-
|
|
227
|
-
Returns
|
|
228
|
-
-------
|
|
229
|
-
None
|
|
230
|
-
"""
|
|
231
|
-
entity_types = self._get_entity_types()
|
|
232
|
-
|
|
233
|
-
# Cycle over entity types
|
|
234
|
-
for entity_type in entity_types:
|
|
235
|
-
# Entity types are stored as a list of entities
|
|
236
|
-
for entity in obj.get("spec", {}).get(entity_type, []):
|
|
237
|
-
embedded = self._is_embedded(entity)
|
|
238
|
-
ref = entity["metadata"].get("ref")
|
|
239
|
-
|
|
240
|
-
# Import entity if not embedded and there is a ref
|
|
241
|
-
if not embedded and ref is not None:
|
|
242
|
-
# Import entity from local ref
|
|
243
|
-
if has_local_scheme(ref):
|
|
244
|
-
try:
|
|
245
|
-
# Artifacts, Dataitems and Models
|
|
246
|
-
if entity_type in entity_types[:3]:
|
|
247
|
-
processor.import_context_entity(ref)
|
|
248
|
-
|
|
249
|
-
# Functions and Workflows
|
|
250
|
-
elif entity_type in entity_types[3:]:
|
|
251
|
-
processor.import_executable_entity(ref)
|
|
252
|
-
|
|
253
|
-
except FileNotFoundError:
|
|
254
|
-
msg = f"File not found: {ref}."
|
|
255
|
-
raise EntityError(msg)
|
|
256
|
-
|
|
257
|
-
# If entity is embedded, create it and try to save
|
|
258
|
-
elif embedded:
|
|
259
|
-
# It's possible that embedded field in metadata is not shown
|
|
260
|
-
if entity["metadata"].get("embedded") is None:
|
|
261
|
-
entity["metadata"]["embedded"] = True
|
|
262
|
-
|
|
263
|
-
try:
|
|
264
|
-
build_entity_from_dict(entity).save()
|
|
265
|
-
except EntityAlreadyExistsError:
|
|
266
|
-
pass
|
|
267
|
-
|
|
268
|
-
def _load_entities(self, obj: dict) -> None:
|
|
269
|
-
"""
|
|
270
|
-
Load project entities.
|
|
271
|
-
|
|
272
|
-
Parameters
|
|
273
|
-
----------
|
|
274
|
-
obj : dict
|
|
275
|
-
Project object in dictionary format.
|
|
276
|
-
|
|
277
|
-
Returns
|
|
278
|
-
-------
|
|
279
|
-
None
|
|
280
|
-
"""
|
|
281
|
-
entity_types = self._get_entity_types()
|
|
282
|
-
|
|
283
|
-
# Cycle over entity types
|
|
284
|
-
for entity_type in entity_types:
|
|
285
|
-
# Entity types are stored as a list of entities
|
|
286
|
-
for entity in obj.get("spec", {}).get(entity_type, []):
|
|
287
|
-
embedded = self._is_embedded(entity)
|
|
288
|
-
ref = entity["metadata"].get("ref")
|
|
289
|
-
|
|
290
|
-
# Load entity if not embedded and there is a ref
|
|
291
|
-
if not embedded and ref is not None:
|
|
292
|
-
# Load entity from local ref
|
|
293
|
-
if has_local_scheme(ref):
|
|
294
|
-
try:
|
|
295
|
-
# Artifacts, Dataitems and Models
|
|
296
|
-
if entity_type in entity_types[:3]:
|
|
297
|
-
processor.load_context_entity(ref)
|
|
298
|
-
|
|
299
|
-
# Functions and Workflows
|
|
300
|
-
elif entity_type in entity_types[3:]:
|
|
301
|
-
processor.load_executable_entity(ref)
|
|
302
|
-
|
|
303
|
-
except FileNotFoundError:
|
|
304
|
-
msg = f"File not found: {ref}."
|
|
305
|
-
raise EntityError(msg)
|
|
306
|
-
|
|
307
|
-
def _is_embedded(self, entity: dict) -> bool:
|
|
308
|
-
"""
|
|
309
|
-
Check if entity is embedded.
|
|
310
|
-
|
|
311
|
-
Parameters
|
|
312
|
-
----------
|
|
313
|
-
entity : dict
|
|
314
|
-
Entity in dictionary format.
|
|
315
|
-
|
|
316
|
-
Returns
|
|
317
|
-
-------
|
|
318
|
-
bool
|
|
319
|
-
True if entity is embedded.
|
|
320
|
-
"""
|
|
321
|
-
metadata_embedded = entity["metadata"].get("embedded", False)
|
|
322
|
-
no_status = entity.get("status", None) is None
|
|
323
|
-
no_spec = entity.get("spec", None) is None
|
|
324
|
-
return metadata_embedded or not (no_status and no_spec)
|
|
325
|
-
|
|
326
|
-
def _get_entity_types(self) -> list[str]:
|
|
327
|
-
"""
|
|
328
|
-
Get entity types.
|
|
329
|
-
|
|
330
|
-
Returns
|
|
331
|
-
-------
|
|
332
|
-
list
|
|
333
|
-
Entity types.
|
|
334
|
-
"""
|
|
335
|
-
return [
|
|
336
|
-
f"{EntityTypes.ARTIFACT.value}s",
|
|
337
|
-
f"{EntityTypes.DATAITEM.value}s",
|
|
338
|
-
f"{EntityTypes.MODEL.value}s",
|
|
339
|
-
f"{EntityTypes.FUNCTION.value}s",
|
|
340
|
-
f"{EntityTypes.WORKFLOW.value}s",
|
|
341
|
-
]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|