digitalhub 0.13.0b3__py3-none-any.whl → 0.14.9__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.
- digitalhub/__init__.py +3 -8
- digitalhub/context/api.py +43 -6
- digitalhub/context/builder.py +1 -5
- digitalhub/context/context.py +28 -13
- digitalhub/entities/_base/_base/entity.py +0 -15
- digitalhub/entities/_base/context/entity.py +1 -4
- digitalhub/entities/_base/entity/builder.py +5 -5
- digitalhub/entities/_base/entity/entity.py +0 -8
- digitalhub/entities/_base/executable/entity.py +195 -87
- digitalhub/entities/_base/material/entity.py +11 -23
- digitalhub/entities/_base/material/utils.py +28 -4
- digitalhub/entities/_base/runtime_entity/builder.py +53 -18
- digitalhub/entities/_base/unversioned/entity.py +1 -1
- digitalhub/entities/_base/versioned/entity.py +1 -1
- digitalhub/entities/_commons/enums.py +1 -31
- digitalhub/entities/_commons/metrics.py +64 -30
- digitalhub/entities/_commons/utils.py +119 -30
- digitalhub/entities/_constructors/_resources.py +151 -0
- digitalhub/entities/{_base/entity/_constructors → _constructors}/name.py +18 -0
- digitalhub/entities/_processors/base/crud.py +381 -0
- digitalhub/entities/_processors/base/import_export.py +118 -0
- digitalhub/entities/_processors/base/processor.py +299 -0
- digitalhub/entities/_processors/base/special_ops.py +104 -0
- digitalhub/entities/_processors/context/crud.py +652 -0
- digitalhub/entities/_processors/context/import_export.py +242 -0
- digitalhub/entities/_processors/context/material.py +123 -0
- digitalhub/entities/_processors/context/processor.py +400 -0
- digitalhub/entities/_processors/context/special_ops.py +476 -0
- digitalhub/entities/_processors/processors.py +12 -0
- digitalhub/entities/_processors/utils.py +38 -102
- digitalhub/entities/artifact/crud.py +58 -22
- digitalhub/entities/artifact/utils.py +28 -13
- digitalhub/entities/builders.py +2 -0
- digitalhub/entities/dataitem/crud.py +63 -20
- digitalhub/entities/dataitem/table/entity.py +27 -22
- digitalhub/entities/dataitem/utils.py +82 -32
- digitalhub/entities/function/_base/entity.py +3 -6
- digitalhub/entities/function/crud.py +55 -24
- digitalhub/entities/model/_base/entity.py +62 -20
- digitalhub/entities/model/crud.py +59 -23
- digitalhub/entities/model/mlflow/utils.py +29 -20
- digitalhub/entities/model/utils.py +28 -13
- digitalhub/entities/project/_base/builder.py +0 -6
- digitalhub/entities/project/_base/entity.py +337 -164
- digitalhub/entities/project/_base/spec.py +4 -4
- digitalhub/entities/project/crud.py +28 -71
- digitalhub/entities/project/utils.py +7 -3
- digitalhub/entities/run/_base/builder.py +0 -4
- digitalhub/entities/run/_base/entity.py +70 -63
- digitalhub/entities/run/crud.py +79 -26
- digitalhub/entities/secret/_base/entity.py +1 -5
- digitalhub/entities/secret/crud.py +31 -28
- digitalhub/entities/task/_base/builder.py +0 -4
- digitalhub/entities/task/_base/entity.py +5 -5
- digitalhub/entities/task/_base/models.py +13 -16
- digitalhub/entities/task/crud.py +61 -29
- digitalhub/entities/trigger/_base/entity.py +1 -5
- digitalhub/entities/trigger/crud.py +89 -30
- digitalhub/entities/workflow/_base/entity.py +3 -8
- digitalhub/entities/workflow/crud.py +55 -24
- digitalhub/factory/entity.py +283 -0
- digitalhub/factory/enums.py +18 -0
- digitalhub/factory/registry.py +197 -0
- digitalhub/factory/runtime.py +44 -0
- digitalhub/factory/utils.py +3 -54
- digitalhub/runtimes/_base.py +2 -2
- digitalhub/stores/client/{dhcore/api_builder.py → api_builder.py} +3 -3
- digitalhub/stores/client/builder.py +19 -31
- digitalhub/stores/client/client.py +322 -0
- digitalhub/stores/client/configurator.py +408 -0
- digitalhub/stores/client/enums.py +50 -0
- digitalhub/stores/client/{dhcore/error_parser.py → error_parser.py} +0 -4
- digitalhub/stores/client/header_manager.py +61 -0
- digitalhub/stores/client/http_handler.py +152 -0
- digitalhub/stores/client/{_base/key_builder.py → key_builder.py} +14 -14
- digitalhub/stores/client/params_builder.py +330 -0
- digitalhub/stores/client/response_processor.py +102 -0
- digitalhub/stores/client/utils.py +35 -0
- digitalhub/stores/{credentials → configurator}/api.py +5 -9
- digitalhub/stores/configurator/configurator.py +123 -0
- digitalhub/stores/{credentials → configurator}/enums.py +27 -10
- digitalhub/stores/configurator/handler.py +213 -0
- digitalhub/stores/{credentials → configurator}/ini_module.py +31 -22
- digitalhub/stores/data/_base/store.py +0 -20
- digitalhub/stores/data/api.py +5 -7
- digitalhub/stores/data/builder.py +53 -27
- digitalhub/stores/data/local/store.py +0 -103
- digitalhub/stores/data/remote/store.py +0 -4
- digitalhub/stores/data/s3/configurator.py +39 -77
- digitalhub/stores/data/s3/store.py +57 -37
- digitalhub/stores/data/sql/configurator.py +66 -46
- digitalhub/stores/data/sql/store.py +171 -104
- digitalhub/stores/readers/data/factory.py +0 -8
- digitalhub/stores/readers/data/pandas/reader.py +9 -19
- digitalhub/utils/file_utils.py +0 -17
- digitalhub/utils/generic_utils.py +1 -14
- digitalhub/utils/git_utils.py +0 -8
- digitalhub/utils/io_utils.py +0 -12
- digitalhub/utils/store_utils.py +44 -0
- {digitalhub-0.13.0b3.dist-info → digitalhub-0.14.9.dist-info}/METADATA +5 -4
- {digitalhub-0.13.0b3.dist-info → digitalhub-0.14.9.dist-info}/RECORD +112 -113
- {digitalhub-0.13.0b3.dist-info → digitalhub-0.14.9.dist-info}/WHEEL +1 -1
- digitalhub/entities/_commons/types.py +0 -9
- digitalhub/entities/_processors/base.py +0 -531
- digitalhub/entities/_processors/context.py +0 -1299
- digitalhub/entities/task/_base/utils.py +0 -22
- digitalhub/factory/factory.py +0 -381
- digitalhub/stores/client/_base/api_builder.py +0 -34
- digitalhub/stores/client/_base/client.py +0 -243
- digitalhub/stores/client/_base/params_builder.py +0 -34
- digitalhub/stores/client/api.py +0 -36
- digitalhub/stores/client/dhcore/client.py +0 -613
- digitalhub/stores/client/dhcore/configurator.py +0 -675
- digitalhub/stores/client/dhcore/enums.py +0 -34
- digitalhub/stores/client/dhcore/key_builder.py +0 -62
- digitalhub/stores/client/dhcore/models.py +0 -40
- digitalhub/stores/client/dhcore/params_builder.py +0 -278
- digitalhub/stores/client/dhcore/utils.py +0 -94
- digitalhub/stores/client/local/api_builder.py +0 -116
- digitalhub/stores/client/local/client.py +0 -573
- digitalhub/stores/client/local/enums.py +0 -15
- digitalhub/stores/client/local/key_builder.py +0 -62
- digitalhub/stores/client/local/params_builder.py +0 -120
- digitalhub/stores/credentials/__init__.py +0 -3
- digitalhub/stores/credentials/configurator.py +0 -210
- digitalhub/stores/credentials/handler.py +0 -176
- digitalhub/stores/credentials/store.py +0 -81
- digitalhub/stores/data/enums.py +0 -15
- digitalhub/stores/data/s3/utils.py +0 -78
- /digitalhub/entities/{_base/entity/_constructors → _constructors}/__init__.py +0 -0
- /digitalhub/entities/{_base/entity/_constructors → _constructors}/metadata.py +0 -0
- /digitalhub/entities/{_base/entity/_constructors → _constructors}/spec.py +0 -0
- /digitalhub/entities/{_base/entity/_constructors → _constructors}/status.py +0 -0
- /digitalhub/entities/{_base/entity/_constructors → _constructors}/uuid.py +0 -0
- /digitalhub/{stores/client/_base → entities/_processors/base}/__init__.py +0 -0
- /digitalhub/{stores/client/dhcore → entities/_processors/context}/__init__.py +0 -0
- /digitalhub/stores/{client/local → configurator}/__init__.py +0 -0
- {digitalhub-0.13.0b3.dist-info → digitalhub-0.14.9.dist-info}/licenses/AUTHORS +0 -0
- {digitalhub-0.13.0b3.dist-info → digitalhub-0.14.9.dist-info}/licenses/LICENSE +0 -0
|
@@ -11,8 +11,8 @@ from typing import Any
|
|
|
11
11
|
from digitalhub.context.api import build_context
|
|
12
12
|
from digitalhub.entities._base.entity.entity import Entity
|
|
13
13
|
from digitalhub.entities._commons.enums import EntityTypes
|
|
14
|
-
from digitalhub.entities.
|
|
15
|
-
from digitalhub.entities._processors.
|
|
14
|
+
from digitalhub.entities._constructors.uuid import build_uuid
|
|
15
|
+
from digitalhub.entities._processors.processors import base_processor, context_processor
|
|
16
16
|
from digitalhub.entities.artifact.crud import (
|
|
17
17
|
delete_artifact,
|
|
18
18
|
get_artifact,
|
|
@@ -71,10 +71,9 @@ from digitalhub.entities.workflow.crud import (
|
|
|
71
71
|
new_workflow,
|
|
72
72
|
update_workflow,
|
|
73
73
|
)
|
|
74
|
-
from digitalhub.factory.
|
|
75
|
-
from digitalhub.stores.client.
|
|
74
|
+
from digitalhub.factory.entity import entity_factory
|
|
75
|
+
from digitalhub.stores.client.builder import get_client
|
|
76
76
|
from digitalhub.utils.exceptions import BackendError, EntityAlreadyExistsError, EntityError
|
|
77
|
-
from digitalhub.utils.generic_utils import get_timestamp
|
|
78
77
|
from digitalhub.utils.io_utils import write_yaml
|
|
79
78
|
from digitalhub.utils.uri_utils import has_local_scheme
|
|
80
79
|
|
|
@@ -107,7 +106,6 @@ class Project(Entity):
|
|
|
107
106
|
spec: ProjectSpec,
|
|
108
107
|
status: ProjectStatus,
|
|
109
108
|
user: str | None = None,
|
|
110
|
-
local: bool = False,
|
|
111
109
|
) -> None:
|
|
112
110
|
super().__init__(kind, metadata, spec, status, user)
|
|
113
111
|
self.spec: ProjectSpec
|
|
@@ -115,12 +113,12 @@ class Project(Entity):
|
|
|
115
113
|
|
|
116
114
|
self.id = name
|
|
117
115
|
self.name = name
|
|
118
|
-
self.key = base_processor.build_project_key(self.name
|
|
116
|
+
self.key = base_processor.build_project_key(self.name)
|
|
119
117
|
|
|
120
118
|
self._obj_attr.extend(["id", "name"])
|
|
121
119
|
|
|
122
120
|
# Set client
|
|
123
|
-
self._client = get_client(
|
|
121
|
+
self._client = get_client()
|
|
124
122
|
|
|
125
123
|
# Set context
|
|
126
124
|
build_context(self)
|
|
@@ -144,13 +142,10 @@ class Project(Entity):
|
|
|
144
142
|
Entity saved.
|
|
145
143
|
"""
|
|
146
144
|
if update:
|
|
147
|
-
if self._client.is_local():
|
|
148
|
-
self.metadata.updated = get_timestamp()
|
|
149
145
|
new_obj = base_processor.update_project_entity(
|
|
150
146
|
entity_type=self.ENTITY_TYPE,
|
|
151
147
|
entity_name=self.name,
|
|
152
148
|
entity_dict=self.to_dict(),
|
|
153
|
-
local=self._client.is_local(),
|
|
154
149
|
)
|
|
155
150
|
else:
|
|
156
151
|
new_obj = base_processor.create_project_entity(_entity=self)
|
|
@@ -169,7 +164,6 @@ class Project(Entity):
|
|
|
169
164
|
new_obj = base_processor.read_project_entity(
|
|
170
165
|
entity_type=self.ENTITY_TYPE,
|
|
171
166
|
entity_name=self.name,
|
|
172
|
-
local=self._client.is_local(),
|
|
173
167
|
)
|
|
174
168
|
self._update_attributes(new_obj)
|
|
175
169
|
return self
|
|
@@ -241,7 +235,7 @@ class Project(Entity):
|
|
|
241
235
|
Exported filepath.
|
|
242
236
|
"""
|
|
243
237
|
obj = self._refresh_to_dict()
|
|
244
|
-
pth = Path(self.spec.
|
|
238
|
+
pth = Path(self.spec.source) / f"{self.ENTITY_TYPE}s-{self.name}.yaml"
|
|
245
239
|
obj = self._export_not_embedded(obj)
|
|
246
240
|
write_yaml(pth, obj)
|
|
247
241
|
return str(pth)
|
|
@@ -290,7 +284,7 @@ class Project(Entity):
|
|
|
290
284
|
# Return updated object
|
|
291
285
|
return obj
|
|
292
286
|
|
|
293
|
-
def _import_entities(self, obj: dict) -> None:
|
|
287
|
+
def _import_entities(self, obj: dict, reset_id: bool = False) -> None:
|
|
294
288
|
"""
|
|
295
289
|
Import project entities.
|
|
296
290
|
|
|
@@ -298,10 +292,6 @@ class Project(Entity):
|
|
|
298
292
|
----------
|
|
299
293
|
obj : dict
|
|
300
294
|
Project object in dictionary format.
|
|
301
|
-
|
|
302
|
-
Returns
|
|
303
|
-
-------
|
|
304
|
-
None
|
|
305
295
|
"""
|
|
306
296
|
entity_types = self._get_entity_types()
|
|
307
297
|
|
|
@@ -319,11 +309,19 @@ class Project(Entity):
|
|
|
319
309
|
try:
|
|
320
310
|
# Artifacts, Dataitems and Models
|
|
321
311
|
if entity_type in entity_types[:3]:
|
|
322
|
-
context_processor.import_context_entity(
|
|
312
|
+
context_processor.import_context_entity(
|
|
313
|
+
file=ref,
|
|
314
|
+
reset_id=reset_id,
|
|
315
|
+
context=self.name,
|
|
316
|
+
)
|
|
323
317
|
|
|
324
318
|
# Functions and Workflows
|
|
325
319
|
elif entity_type in entity_types[3:]:
|
|
326
|
-
context_processor.import_executable_entity(
|
|
320
|
+
context_processor.import_executable_entity(
|
|
321
|
+
file=ref,
|
|
322
|
+
reset_id=reset_id,
|
|
323
|
+
context=self.name,
|
|
324
|
+
)
|
|
327
325
|
|
|
328
326
|
except FileNotFoundError:
|
|
329
327
|
msg = f"File not found: {ref}."
|
|
@@ -335,8 +333,13 @@ class Project(Entity):
|
|
|
335
333
|
if entity["metadata"].get("embedded") is None:
|
|
336
334
|
entity["metadata"]["embedded"] = True
|
|
337
335
|
|
|
336
|
+
if reset_id:
|
|
337
|
+
new_id = build_uuid()
|
|
338
|
+
entity["id"] = new_id
|
|
339
|
+
entity["metadata"]["version"] = new_id
|
|
340
|
+
|
|
338
341
|
try:
|
|
339
|
-
|
|
342
|
+
entity_factory.build_entity_from_dict(entity).save()
|
|
340
343
|
except EntityAlreadyExistsError:
|
|
341
344
|
pass
|
|
342
345
|
|
|
@@ -348,10 +351,6 @@ class Project(Entity):
|
|
|
348
351
|
----------
|
|
349
352
|
obj : dict
|
|
350
353
|
Project object in dictionary format.
|
|
351
|
-
|
|
352
|
-
Returns
|
|
353
|
-
-------
|
|
354
|
-
None
|
|
355
354
|
"""
|
|
356
355
|
entity_types = self._get_entity_types()
|
|
357
356
|
|
|
@@ -527,7 +526,6 @@ class Project(Entity):
|
|
|
527
526
|
self,
|
|
528
527
|
identifier: str,
|
|
529
528
|
entity_id: str | None = None,
|
|
530
|
-
**kwargs,
|
|
531
529
|
) -> Artifact:
|
|
532
530
|
"""
|
|
533
531
|
Get object from backend.
|
|
@@ -538,8 +536,6 @@ class Project(Entity):
|
|
|
538
536
|
Entity key (store://...) or entity name.
|
|
539
537
|
entity_id : str
|
|
540
538
|
Entity ID.
|
|
541
|
-
**kwargs : dict
|
|
542
|
-
Parameters to pass to the API call.
|
|
543
539
|
|
|
544
540
|
Returns
|
|
545
541
|
-------
|
|
@@ -559,7 +555,6 @@ class Project(Entity):
|
|
|
559
555
|
identifier=identifier,
|
|
560
556
|
project=self.name,
|
|
561
557
|
entity_id=entity_id,
|
|
562
|
-
**kwargs,
|
|
563
558
|
)
|
|
564
559
|
self.refresh()
|
|
565
560
|
return obj
|
|
@@ -567,7 +562,6 @@ class Project(Entity):
|
|
|
567
562
|
def get_artifact_versions(
|
|
568
563
|
self,
|
|
569
564
|
identifier: str,
|
|
570
|
-
**kwargs,
|
|
571
565
|
) -> list[Artifact]:
|
|
572
566
|
"""
|
|
573
567
|
Get object versions from backend.
|
|
@@ -576,8 +570,6 @@ class Project(Entity):
|
|
|
576
570
|
----------
|
|
577
571
|
identifier : str
|
|
578
572
|
Entity key (store://...) or entity name.
|
|
579
|
-
**kwargs : dict
|
|
580
|
-
Parameters to pass to the API call.
|
|
581
573
|
|
|
582
574
|
Returns
|
|
583
575
|
-------
|
|
@@ -592,16 +584,40 @@ class Project(Entity):
|
|
|
592
584
|
Using entity name:
|
|
593
585
|
>>> obj = project.get_artifact_versions("my-artifact-name")
|
|
594
586
|
"""
|
|
595
|
-
return get_artifact_versions(identifier, project=self.name
|
|
587
|
+
return get_artifact_versions(identifier, project=self.name)
|
|
596
588
|
|
|
597
|
-
def list_artifacts(
|
|
589
|
+
def list_artifacts(
|
|
590
|
+
self,
|
|
591
|
+
q: str | None = None,
|
|
592
|
+
name: str | None = None,
|
|
593
|
+
kind: str | None = None,
|
|
594
|
+
user: str | None = None,
|
|
595
|
+
state: str | None = None,
|
|
596
|
+
created: str | None = None,
|
|
597
|
+
updated: str | None = None,
|
|
598
|
+
versions: str | None = None,
|
|
599
|
+
) -> list[Artifact]:
|
|
598
600
|
"""
|
|
599
601
|
List all latest version objects from backend.
|
|
600
602
|
|
|
601
603
|
Parameters
|
|
602
604
|
----------
|
|
603
|
-
|
|
604
|
-
|
|
605
|
+
q : str
|
|
606
|
+
Query string to filter objects.
|
|
607
|
+
name : str
|
|
608
|
+
Object name.
|
|
609
|
+
kind : str
|
|
610
|
+
Kind of the object.
|
|
611
|
+
user : str
|
|
612
|
+
User that created the object.
|
|
613
|
+
state : str
|
|
614
|
+
Object state.
|
|
615
|
+
created : str
|
|
616
|
+
Creation date filter.
|
|
617
|
+
updated : str
|
|
618
|
+
Update date filter.
|
|
619
|
+
version : str
|
|
620
|
+
Object version, default is latest.
|
|
605
621
|
|
|
606
622
|
Returns
|
|
607
623
|
-------
|
|
@@ -612,12 +628,23 @@ class Project(Entity):
|
|
|
612
628
|
--------
|
|
613
629
|
>>> objs = project.list_artifacts()
|
|
614
630
|
"""
|
|
615
|
-
return list_artifacts(
|
|
631
|
+
return list_artifacts(
|
|
632
|
+
self.name,
|
|
633
|
+
q=q,
|
|
634
|
+
name=name,
|
|
635
|
+
kind=kind,
|
|
636
|
+
user=user,
|
|
637
|
+
state=state,
|
|
638
|
+
created=created,
|
|
639
|
+
updated=updated,
|
|
640
|
+
versions=versions,
|
|
641
|
+
)
|
|
616
642
|
|
|
617
643
|
def import_artifact(
|
|
618
644
|
self,
|
|
619
|
-
file: str,
|
|
620
|
-
|
|
645
|
+
file: str | None = None,
|
|
646
|
+
key: str | None = None,
|
|
647
|
+
reset_id: bool = True,
|
|
621
648
|
) -> Artifact:
|
|
622
649
|
"""
|
|
623
650
|
Import object from a YAML file and create a new object into the backend.
|
|
@@ -626,8 +653,10 @@ class Project(Entity):
|
|
|
626
653
|
----------
|
|
627
654
|
file : str
|
|
628
655
|
Path to YAML file.
|
|
629
|
-
|
|
630
|
-
|
|
656
|
+
key : str
|
|
657
|
+
Entity key (store://...).
|
|
658
|
+
reset_id : bool
|
|
659
|
+
Flag to determine if the ID of context entities should be reset.
|
|
631
660
|
|
|
632
661
|
Returns
|
|
633
662
|
-------
|
|
@@ -638,7 +667,7 @@ class Project(Entity):
|
|
|
638
667
|
--------
|
|
639
668
|
>>> obj = project.import_artifact("my-artifact.yaml")
|
|
640
669
|
"""
|
|
641
|
-
return import_artifact(file,
|
|
670
|
+
return import_artifact(file, key, reset_id, self.name)
|
|
642
671
|
|
|
643
672
|
def update_artifact(self, entity: Artifact) -> Artifact:
|
|
644
673
|
"""
|
|
@@ -667,7 +696,7 @@ class Project(Entity):
|
|
|
667
696
|
identifier: str,
|
|
668
697
|
entity_id: str | None = None,
|
|
669
698
|
delete_all_versions: bool = False,
|
|
670
|
-
|
|
699
|
+
cascade: bool = False,
|
|
671
700
|
) -> None:
|
|
672
701
|
"""
|
|
673
702
|
Delete object from backend.
|
|
@@ -680,8 +709,8 @@ class Project(Entity):
|
|
|
680
709
|
Entity ID.
|
|
681
710
|
delete_all_versions : bool
|
|
682
711
|
Delete all versions of the named entity. If True, use entity name instead of entity key as identifier.
|
|
683
|
-
|
|
684
|
-
|
|
712
|
+
cascade : bool
|
|
713
|
+
Cascade delete related entities.
|
|
685
714
|
|
|
686
715
|
Returns
|
|
687
716
|
-------
|
|
@@ -702,7 +731,7 @@ class Project(Entity):
|
|
|
702
731
|
project=self.name,
|
|
703
732
|
entity_id=entity_id,
|
|
704
733
|
delete_all_versions=delete_all_versions,
|
|
705
|
-
|
|
734
|
+
cascade=cascade,
|
|
706
735
|
)
|
|
707
736
|
self.refresh()
|
|
708
737
|
|
|
@@ -830,7 +859,6 @@ class Project(Entity):
|
|
|
830
859
|
self,
|
|
831
860
|
identifier: str,
|
|
832
861
|
entity_id: str | None = None,
|
|
833
|
-
**kwargs,
|
|
834
862
|
) -> Dataitem:
|
|
835
863
|
"""
|
|
836
864
|
Get object from backend.
|
|
@@ -841,8 +869,6 @@ class Project(Entity):
|
|
|
841
869
|
Entity key (store://...) or entity name.
|
|
842
870
|
entity_id : str
|
|
843
871
|
Entity ID.
|
|
844
|
-
**kwargs : dict
|
|
845
|
-
Parameters to pass to the API call.
|
|
846
872
|
|
|
847
873
|
Returns
|
|
848
874
|
-------
|
|
@@ -862,7 +888,6 @@ class Project(Entity):
|
|
|
862
888
|
identifier=identifier,
|
|
863
889
|
project=self.name,
|
|
864
890
|
entity_id=entity_id,
|
|
865
|
-
**kwargs,
|
|
866
891
|
)
|
|
867
892
|
self.refresh()
|
|
868
893
|
return obj
|
|
@@ -870,7 +895,6 @@ class Project(Entity):
|
|
|
870
895
|
def get_dataitem_versions(
|
|
871
896
|
self,
|
|
872
897
|
identifier: str,
|
|
873
|
-
**kwargs,
|
|
874
898
|
) -> list[Dataitem]:
|
|
875
899
|
"""
|
|
876
900
|
Get object versions from backend.
|
|
@@ -879,8 +903,6 @@ class Project(Entity):
|
|
|
879
903
|
----------
|
|
880
904
|
identifier : str
|
|
881
905
|
Entity key (store://...) or entity name.
|
|
882
|
-
**kwargs : dict
|
|
883
|
-
Parameters to pass to the API call.
|
|
884
906
|
|
|
885
907
|
Returns
|
|
886
908
|
-------
|
|
@@ -895,16 +917,40 @@ class Project(Entity):
|
|
|
895
917
|
Using entity name:
|
|
896
918
|
>>> obj = project.get_dataitem_versions("my-dataitem-name")
|
|
897
919
|
"""
|
|
898
|
-
return get_dataitem_versions(identifier, project=self.name
|
|
920
|
+
return get_dataitem_versions(identifier, project=self.name)
|
|
899
921
|
|
|
900
|
-
def list_dataitems(
|
|
922
|
+
def list_dataitems(
|
|
923
|
+
self,
|
|
924
|
+
q: str | None = None,
|
|
925
|
+
name: str | None = None,
|
|
926
|
+
kind: str | None = None,
|
|
927
|
+
user: str | None = None,
|
|
928
|
+
state: str | None = None,
|
|
929
|
+
created: str | None = None,
|
|
930
|
+
updated: str | None = None,
|
|
931
|
+
versions: str | None = None,
|
|
932
|
+
) -> list[Dataitem]:
|
|
901
933
|
"""
|
|
902
934
|
List all latest version objects from backend.
|
|
903
935
|
|
|
904
936
|
Parameters
|
|
905
937
|
----------
|
|
906
|
-
|
|
907
|
-
|
|
938
|
+
q : str
|
|
939
|
+
Query string to filter objects.
|
|
940
|
+
name : str
|
|
941
|
+
Object name.
|
|
942
|
+
kind : str
|
|
943
|
+
Kind of the object.
|
|
944
|
+
user : str
|
|
945
|
+
User that created the object.
|
|
946
|
+
state : str
|
|
947
|
+
Object state.
|
|
948
|
+
created : str
|
|
949
|
+
Creation date filter.
|
|
950
|
+
updated : str
|
|
951
|
+
Update date filter.
|
|
952
|
+
version : str
|
|
953
|
+
Object version, default is latest.
|
|
908
954
|
|
|
909
955
|
Returns
|
|
910
956
|
-------
|
|
@@ -915,12 +961,23 @@ class Project(Entity):
|
|
|
915
961
|
--------
|
|
916
962
|
>>> objs = project.list_dataitems()
|
|
917
963
|
"""
|
|
918
|
-
return list_dataitems(
|
|
964
|
+
return list_dataitems(
|
|
965
|
+
self.name,
|
|
966
|
+
q=q,
|
|
967
|
+
name=name,
|
|
968
|
+
kind=kind,
|
|
969
|
+
user=user,
|
|
970
|
+
state=state,
|
|
971
|
+
created=created,
|
|
972
|
+
updated=updated,
|
|
973
|
+
versions=versions,
|
|
974
|
+
)
|
|
919
975
|
|
|
920
976
|
def import_dataitem(
|
|
921
977
|
self,
|
|
922
|
-
file: str,
|
|
923
|
-
|
|
978
|
+
file: str | None = None,
|
|
979
|
+
key: str | None = None,
|
|
980
|
+
reset_id: bool = True,
|
|
924
981
|
) -> Dataitem:
|
|
925
982
|
"""
|
|
926
983
|
Import object from a YAML file and create a new object into the backend.
|
|
@@ -929,8 +986,10 @@ class Project(Entity):
|
|
|
929
986
|
----------
|
|
930
987
|
file : str
|
|
931
988
|
Path to YAML file.
|
|
932
|
-
|
|
933
|
-
|
|
989
|
+
key : str
|
|
990
|
+
Entity key (store://...).
|
|
991
|
+
reset_id : bool
|
|
992
|
+
Flag to determine if the ID of context entities should be reset.
|
|
934
993
|
|
|
935
994
|
Returns
|
|
936
995
|
-------
|
|
@@ -941,7 +1000,7 @@ class Project(Entity):
|
|
|
941
1000
|
--------
|
|
942
1001
|
>>> obj = project.import_dataitem("my-dataitem.yaml")
|
|
943
1002
|
"""
|
|
944
|
-
return import_dataitem(file,
|
|
1003
|
+
return import_dataitem(file, key, reset_id, self.name)
|
|
945
1004
|
|
|
946
1005
|
def update_dataitem(self, entity: Dataitem) -> Dataitem:
|
|
947
1006
|
"""
|
|
@@ -970,7 +1029,7 @@ class Project(Entity):
|
|
|
970
1029
|
identifier: str,
|
|
971
1030
|
entity_id: str | None = None,
|
|
972
1031
|
delete_all_versions: bool = False,
|
|
973
|
-
|
|
1032
|
+
cascade: bool = False,
|
|
974
1033
|
) -> None:
|
|
975
1034
|
"""
|
|
976
1035
|
Delete object from backend.
|
|
@@ -983,8 +1042,8 @@ class Project(Entity):
|
|
|
983
1042
|
Entity ID.
|
|
984
1043
|
delete_all_versions : bool
|
|
985
1044
|
Delete all versions of the named entity. If True, use entity name instead of entity key as identifier.
|
|
986
|
-
|
|
987
|
-
|
|
1045
|
+
cascade : bool
|
|
1046
|
+
Cascade delete related entities.
|
|
988
1047
|
|
|
989
1048
|
Returns
|
|
990
1049
|
-------
|
|
@@ -1006,7 +1065,7 @@ class Project(Entity):
|
|
|
1006
1065
|
project=self.name,
|
|
1007
1066
|
entity_id=entity_id,
|
|
1008
1067
|
delete_all_versions=delete_all_versions,
|
|
1009
|
-
|
|
1068
|
+
cascade=cascade,
|
|
1010
1069
|
)
|
|
1011
1070
|
self.refresh()
|
|
1012
1071
|
|
|
@@ -1122,7 +1181,6 @@ class Project(Entity):
|
|
|
1122
1181
|
self,
|
|
1123
1182
|
identifier: str,
|
|
1124
1183
|
entity_id: str | None = None,
|
|
1125
|
-
**kwargs,
|
|
1126
1184
|
) -> Model:
|
|
1127
1185
|
"""
|
|
1128
1186
|
Get object from backend.
|
|
@@ -1133,8 +1191,6 @@ class Project(Entity):
|
|
|
1133
1191
|
Entity key (store://...) or entity name.
|
|
1134
1192
|
entity_id : str
|
|
1135
1193
|
Entity ID.
|
|
1136
|
-
**kwargs : dict
|
|
1137
|
-
Parameters to pass to the API call.
|
|
1138
1194
|
|
|
1139
1195
|
Returns
|
|
1140
1196
|
-------
|
|
@@ -1154,7 +1210,6 @@ class Project(Entity):
|
|
|
1154
1210
|
identifier=identifier,
|
|
1155
1211
|
project=self.name,
|
|
1156
1212
|
entity_id=entity_id,
|
|
1157
|
-
**kwargs,
|
|
1158
1213
|
)
|
|
1159
1214
|
self.refresh()
|
|
1160
1215
|
return obj
|
|
@@ -1162,7 +1217,6 @@ class Project(Entity):
|
|
|
1162
1217
|
def get_model_versions(
|
|
1163
1218
|
self,
|
|
1164
1219
|
identifier: str,
|
|
1165
|
-
**kwargs,
|
|
1166
1220
|
) -> list[Model]:
|
|
1167
1221
|
"""
|
|
1168
1222
|
Get object versions from backend.
|
|
@@ -1171,8 +1225,6 @@ class Project(Entity):
|
|
|
1171
1225
|
----------
|
|
1172
1226
|
identifier : str
|
|
1173
1227
|
Entity key (store://...) or entity name.
|
|
1174
|
-
**kwargs : dict
|
|
1175
|
-
Parameters to pass to the API call.
|
|
1176
1228
|
|
|
1177
1229
|
Returns
|
|
1178
1230
|
-------
|
|
@@ -1187,16 +1239,40 @@ class Project(Entity):
|
|
|
1187
1239
|
Using entity name:
|
|
1188
1240
|
>>> obj = project.get_model_versions("my-model-name")
|
|
1189
1241
|
"""
|
|
1190
|
-
return get_model_versions(identifier, project=self.name
|
|
1242
|
+
return get_model_versions(identifier, project=self.name)
|
|
1191
1243
|
|
|
1192
|
-
def list_models(
|
|
1244
|
+
def list_models(
|
|
1245
|
+
self,
|
|
1246
|
+
q: str | None = None,
|
|
1247
|
+
name: str | None = None,
|
|
1248
|
+
kind: str | None = None,
|
|
1249
|
+
user: str | None = None,
|
|
1250
|
+
state: str | None = None,
|
|
1251
|
+
created: str | None = None,
|
|
1252
|
+
updated: str | None = None,
|
|
1253
|
+
versions: str | None = None,
|
|
1254
|
+
) -> list[Model]:
|
|
1193
1255
|
"""
|
|
1194
1256
|
List all latest version objects from backend.
|
|
1195
1257
|
|
|
1196
1258
|
Parameters
|
|
1197
1259
|
----------
|
|
1198
|
-
|
|
1199
|
-
|
|
1260
|
+
q : str
|
|
1261
|
+
Query string to filter objects.
|
|
1262
|
+
name : str
|
|
1263
|
+
Object name.
|
|
1264
|
+
kind : str
|
|
1265
|
+
Kind of the object.
|
|
1266
|
+
user : str
|
|
1267
|
+
User that created the object.
|
|
1268
|
+
state : str
|
|
1269
|
+
Object state.
|
|
1270
|
+
created : str
|
|
1271
|
+
Creation date filter.
|
|
1272
|
+
updated : str
|
|
1273
|
+
Update date filter.
|
|
1274
|
+
version : str
|
|
1275
|
+
Object version, default is latest.
|
|
1200
1276
|
|
|
1201
1277
|
Returns
|
|
1202
1278
|
-------
|
|
@@ -1207,12 +1283,23 @@ class Project(Entity):
|
|
|
1207
1283
|
--------
|
|
1208
1284
|
>>> objs = project.list_models()
|
|
1209
1285
|
"""
|
|
1210
|
-
return list_models(
|
|
1286
|
+
return list_models(
|
|
1287
|
+
self.name,
|
|
1288
|
+
q=q,
|
|
1289
|
+
name=name,
|
|
1290
|
+
kind=kind,
|
|
1291
|
+
user=user,
|
|
1292
|
+
state=state,
|
|
1293
|
+
created=created,
|
|
1294
|
+
updated=updated,
|
|
1295
|
+
versions=versions,
|
|
1296
|
+
)
|
|
1211
1297
|
|
|
1212
1298
|
def import_model(
|
|
1213
1299
|
self,
|
|
1214
|
-
file: str,
|
|
1215
|
-
|
|
1300
|
+
file: str | None = None,
|
|
1301
|
+
key: str | None = None,
|
|
1302
|
+
reset_id: bool = True,
|
|
1216
1303
|
) -> Model:
|
|
1217
1304
|
"""
|
|
1218
1305
|
Import object from a YAML file and create a new object into the backend.
|
|
@@ -1221,8 +1308,10 @@ class Project(Entity):
|
|
|
1221
1308
|
----------
|
|
1222
1309
|
file : str
|
|
1223
1310
|
Path to YAML file.
|
|
1224
|
-
|
|
1225
|
-
|
|
1311
|
+
key : str
|
|
1312
|
+
Entity key (store://...).
|
|
1313
|
+
reset_id : bool
|
|
1314
|
+
Flag to determine if the ID of context entities should be reset.
|
|
1226
1315
|
|
|
1227
1316
|
Returns
|
|
1228
1317
|
-------
|
|
@@ -1233,7 +1322,7 @@ class Project(Entity):
|
|
|
1233
1322
|
--------
|
|
1234
1323
|
>>> obj = project.import_model("my-model.yaml")
|
|
1235
1324
|
"""
|
|
1236
|
-
return import_model(file,
|
|
1325
|
+
return import_model(file, key, reset_id, self.name)
|
|
1237
1326
|
|
|
1238
1327
|
def update_model(self, entity: Model) -> Model:
|
|
1239
1328
|
"""
|
|
@@ -1262,7 +1351,7 @@ class Project(Entity):
|
|
|
1262
1351
|
identifier: str,
|
|
1263
1352
|
entity_id: str | None = None,
|
|
1264
1353
|
delete_all_versions: bool = False,
|
|
1265
|
-
|
|
1354
|
+
cascade: bool = False,
|
|
1266
1355
|
) -> None:
|
|
1267
1356
|
"""
|
|
1268
1357
|
Delete object from backend.
|
|
@@ -1275,8 +1364,8 @@ class Project(Entity):
|
|
|
1275
1364
|
Entity ID.
|
|
1276
1365
|
delete_all_versions : bool
|
|
1277
1366
|
Delete all versions of the named entity. If True, use entity name instead of entity key as identifier.
|
|
1278
|
-
|
|
1279
|
-
|
|
1367
|
+
cascade : bool
|
|
1368
|
+
Cascade delete related entities.
|
|
1280
1369
|
|
|
1281
1370
|
Returns
|
|
1282
1371
|
-------
|
|
@@ -1298,7 +1387,7 @@ class Project(Entity):
|
|
|
1298
1387
|
project=self.name,
|
|
1299
1388
|
entity_id=entity_id,
|
|
1300
1389
|
delete_all_versions=delete_all_versions,
|
|
1301
|
-
|
|
1390
|
+
cascade=cascade,
|
|
1302
1391
|
)
|
|
1303
1392
|
self.refresh()
|
|
1304
1393
|
|
|
@@ -1365,7 +1454,6 @@ class Project(Entity):
|
|
|
1365
1454
|
self,
|
|
1366
1455
|
identifier: str,
|
|
1367
1456
|
entity_id: str | None = None,
|
|
1368
|
-
**kwargs,
|
|
1369
1457
|
) -> Function:
|
|
1370
1458
|
"""
|
|
1371
1459
|
Get object from backend.
|
|
@@ -1376,8 +1464,6 @@ class Project(Entity):
|
|
|
1376
1464
|
Entity key (store://...) or entity name.
|
|
1377
1465
|
entity_id : str
|
|
1378
1466
|
Entity ID.
|
|
1379
|
-
**kwargs : dict
|
|
1380
|
-
Parameters to pass to the API call.
|
|
1381
1467
|
|
|
1382
1468
|
Returns
|
|
1383
1469
|
-------
|
|
@@ -1397,7 +1483,6 @@ class Project(Entity):
|
|
|
1397
1483
|
identifier=identifier,
|
|
1398
1484
|
project=self.name,
|
|
1399
1485
|
entity_id=entity_id,
|
|
1400
|
-
**kwargs,
|
|
1401
1486
|
)
|
|
1402
1487
|
self.refresh()
|
|
1403
1488
|
return obj
|
|
@@ -1405,7 +1490,6 @@ class Project(Entity):
|
|
|
1405
1490
|
def get_function_versions(
|
|
1406
1491
|
self,
|
|
1407
1492
|
identifier: str,
|
|
1408
|
-
**kwargs,
|
|
1409
1493
|
) -> list[Function]:
|
|
1410
1494
|
"""
|
|
1411
1495
|
Get object versions from backend.
|
|
@@ -1414,8 +1498,6 @@ class Project(Entity):
|
|
|
1414
1498
|
----------
|
|
1415
1499
|
identifier : str
|
|
1416
1500
|
Entity key (store://...) or entity name.
|
|
1417
|
-
**kwargs : dict
|
|
1418
|
-
Parameters to pass to the API call.
|
|
1419
1501
|
|
|
1420
1502
|
Returns
|
|
1421
1503
|
-------
|
|
@@ -1430,16 +1512,40 @@ class Project(Entity):
|
|
|
1430
1512
|
Using entity name:
|
|
1431
1513
|
>>> obj = project.get_function_versions("my-function-name")
|
|
1432
1514
|
"""
|
|
1433
|
-
return get_function_versions(identifier, project=self.name
|
|
1515
|
+
return get_function_versions(identifier, project=self.name)
|
|
1434
1516
|
|
|
1435
|
-
def list_functions(
|
|
1517
|
+
def list_functions(
|
|
1518
|
+
self,
|
|
1519
|
+
q: str | None = None,
|
|
1520
|
+
name: str | None = None,
|
|
1521
|
+
kind: str | None = None,
|
|
1522
|
+
user: str | None = None,
|
|
1523
|
+
state: str | None = None,
|
|
1524
|
+
created: str | None = None,
|
|
1525
|
+
updated: str | None = None,
|
|
1526
|
+
versions: str | None = None,
|
|
1527
|
+
) -> list[Function]:
|
|
1436
1528
|
"""
|
|
1437
1529
|
List all latest version objects from backend.
|
|
1438
1530
|
|
|
1439
1531
|
Parameters
|
|
1440
1532
|
----------
|
|
1441
|
-
|
|
1442
|
-
|
|
1533
|
+
q : str
|
|
1534
|
+
Query string to filter objects.
|
|
1535
|
+
name : str
|
|
1536
|
+
Object name.
|
|
1537
|
+
kind : str
|
|
1538
|
+
Kind of the object.
|
|
1539
|
+
user : str
|
|
1540
|
+
User that created the object.
|
|
1541
|
+
state : str
|
|
1542
|
+
Object state.
|
|
1543
|
+
created : str
|
|
1544
|
+
Creation date filter.
|
|
1545
|
+
updated : str
|
|
1546
|
+
Update date filter.
|
|
1547
|
+
version : str
|
|
1548
|
+
Object version, default is latest.
|
|
1443
1549
|
|
|
1444
1550
|
Returns
|
|
1445
1551
|
-------
|
|
@@ -1450,12 +1556,23 @@ class Project(Entity):
|
|
|
1450
1556
|
--------
|
|
1451
1557
|
>>> objs = project.list_functions()
|
|
1452
1558
|
"""
|
|
1453
|
-
return list_functions(
|
|
1559
|
+
return list_functions(
|
|
1560
|
+
self.name,
|
|
1561
|
+
q=q,
|
|
1562
|
+
name=name,
|
|
1563
|
+
kind=kind,
|
|
1564
|
+
user=user,
|
|
1565
|
+
state=state,
|
|
1566
|
+
created=created,
|
|
1567
|
+
updated=updated,
|
|
1568
|
+
versions=versions,
|
|
1569
|
+
)
|
|
1454
1570
|
|
|
1455
1571
|
def import_function(
|
|
1456
1572
|
self,
|
|
1457
|
-
file: str,
|
|
1458
|
-
|
|
1573
|
+
file: str | None = None,
|
|
1574
|
+
key: str | None = None,
|
|
1575
|
+
reset_id: bool = True,
|
|
1459
1576
|
) -> Function:
|
|
1460
1577
|
"""
|
|
1461
1578
|
Import object from a YAML file and create a new object into the backend.
|
|
@@ -1464,8 +1581,10 @@ class Project(Entity):
|
|
|
1464
1581
|
----------
|
|
1465
1582
|
file : str
|
|
1466
1583
|
Path to YAML file.
|
|
1467
|
-
|
|
1468
|
-
|
|
1584
|
+
key : str
|
|
1585
|
+
Entity key (store://...).
|
|
1586
|
+
reset_id : bool
|
|
1587
|
+
Flag to determine if the ID of context entities should be reset.
|
|
1469
1588
|
|
|
1470
1589
|
Returns
|
|
1471
1590
|
-------
|
|
@@ -1476,7 +1595,7 @@ class Project(Entity):
|
|
|
1476
1595
|
--------
|
|
1477
1596
|
>>> obj = project.import_function("my-function.yaml")
|
|
1478
1597
|
"""
|
|
1479
|
-
return import_function(file,
|
|
1598
|
+
return import_function(file, key, reset_id, self.name)
|
|
1480
1599
|
|
|
1481
1600
|
def update_function(self, entity: Function) -> Function:
|
|
1482
1601
|
"""
|
|
@@ -1506,7 +1625,6 @@ class Project(Entity):
|
|
|
1506
1625
|
entity_id: str | None = None,
|
|
1507
1626
|
delete_all_versions: bool = False,
|
|
1508
1627
|
cascade: bool = True,
|
|
1509
|
-
**kwargs,
|
|
1510
1628
|
) -> None:
|
|
1511
1629
|
"""
|
|
1512
1630
|
Delete object from backend.
|
|
@@ -1521,8 +1639,6 @@ class Project(Entity):
|
|
|
1521
1639
|
Delete all versions of the named entity. If True, use entity name instead of entity key as identifier.
|
|
1522
1640
|
cascade : bool
|
|
1523
1641
|
Cascade delete.
|
|
1524
|
-
**kwargs : dict
|
|
1525
|
-
Parameters to pass to the API call.
|
|
1526
1642
|
|
|
1527
1643
|
Returns
|
|
1528
1644
|
-------
|
|
@@ -1544,7 +1660,6 @@ class Project(Entity):
|
|
|
1544
1660
|
entity_id=entity_id,
|
|
1545
1661
|
delete_all_versions=delete_all_versions,
|
|
1546
1662
|
cascade=cascade,
|
|
1547
|
-
**kwargs,
|
|
1548
1663
|
)
|
|
1549
1664
|
self.refresh()
|
|
1550
1665
|
|
|
@@ -1611,7 +1726,6 @@ class Project(Entity):
|
|
|
1611
1726
|
self,
|
|
1612
1727
|
identifier: str,
|
|
1613
1728
|
entity_id: str | None = None,
|
|
1614
|
-
**kwargs,
|
|
1615
1729
|
) -> Workflow:
|
|
1616
1730
|
"""
|
|
1617
1731
|
Get object from backend.
|
|
@@ -1622,8 +1736,6 @@ class Project(Entity):
|
|
|
1622
1736
|
Entity key (store://...) or entity name.
|
|
1623
1737
|
entity_id : str
|
|
1624
1738
|
Entity ID.
|
|
1625
|
-
**kwargs : dict
|
|
1626
|
-
Parameters to pass to the API call.
|
|
1627
1739
|
|
|
1628
1740
|
Returns
|
|
1629
1741
|
-------
|
|
@@ -1643,7 +1755,6 @@ class Project(Entity):
|
|
|
1643
1755
|
identifier=identifier,
|
|
1644
1756
|
project=self.name,
|
|
1645
1757
|
entity_id=entity_id,
|
|
1646
|
-
**kwargs,
|
|
1647
1758
|
)
|
|
1648
1759
|
self.refresh()
|
|
1649
1760
|
return obj
|
|
@@ -1651,7 +1762,6 @@ class Project(Entity):
|
|
|
1651
1762
|
def get_workflow_versions(
|
|
1652
1763
|
self,
|
|
1653
1764
|
identifier: str,
|
|
1654
|
-
**kwargs,
|
|
1655
1765
|
) -> list[Workflow]:
|
|
1656
1766
|
"""
|
|
1657
1767
|
Get object versions from backend.
|
|
@@ -1660,8 +1770,6 @@ class Project(Entity):
|
|
|
1660
1770
|
----------
|
|
1661
1771
|
identifier : str
|
|
1662
1772
|
Entity key (store://...) or entity name.
|
|
1663
|
-
**kwargs : dict
|
|
1664
|
-
Parameters to pass to the API call.
|
|
1665
1773
|
|
|
1666
1774
|
Returns
|
|
1667
1775
|
-------
|
|
@@ -1676,16 +1784,40 @@ class Project(Entity):
|
|
|
1676
1784
|
Using entity name:
|
|
1677
1785
|
>>> obj = project.get_workflow_versions("my-workflow-name")
|
|
1678
1786
|
"""
|
|
1679
|
-
return get_workflow_versions(identifier, project=self.name
|
|
1787
|
+
return get_workflow_versions(identifier, project=self.name)
|
|
1680
1788
|
|
|
1681
|
-
def list_workflows(
|
|
1789
|
+
def list_workflows(
|
|
1790
|
+
self,
|
|
1791
|
+
q: str | None = None,
|
|
1792
|
+
name: str | None = None,
|
|
1793
|
+
kind: str | None = None,
|
|
1794
|
+
user: str | None = None,
|
|
1795
|
+
state: str | None = None,
|
|
1796
|
+
created: str | None = None,
|
|
1797
|
+
updated: str | None = None,
|
|
1798
|
+
versions: str | None = None,
|
|
1799
|
+
) -> list[Workflow]:
|
|
1682
1800
|
"""
|
|
1683
1801
|
List all latest version objects from backend.
|
|
1684
1802
|
|
|
1685
1803
|
Parameters
|
|
1686
1804
|
----------
|
|
1687
|
-
|
|
1688
|
-
|
|
1805
|
+
q : str
|
|
1806
|
+
Query string to filter objects.
|
|
1807
|
+
name : str
|
|
1808
|
+
Object name.
|
|
1809
|
+
kind : str
|
|
1810
|
+
Kind of the object.
|
|
1811
|
+
user : str
|
|
1812
|
+
User that created the object.
|
|
1813
|
+
state : str
|
|
1814
|
+
Object state.
|
|
1815
|
+
created : str
|
|
1816
|
+
Creation date filter.
|
|
1817
|
+
updated : str
|
|
1818
|
+
Update date filter.
|
|
1819
|
+
version : str
|
|
1820
|
+
Object version, default is latest.
|
|
1689
1821
|
|
|
1690
1822
|
Returns
|
|
1691
1823
|
-------
|
|
@@ -1696,12 +1828,23 @@ class Project(Entity):
|
|
|
1696
1828
|
--------
|
|
1697
1829
|
>>> objs = project.list_workflows()
|
|
1698
1830
|
"""
|
|
1699
|
-
return list_workflows(
|
|
1831
|
+
return list_workflows(
|
|
1832
|
+
self.name,
|
|
1833
|
+
q=q,
|
|
1834
|
+
name=name,
|
|
1835
|
+
kind=kind,
|
|
1836
|
+
user=user,
|
|
1837
|
+
state=state,
|
|
1838
|
+
created=created,
|
|
1839
|
+
updated=updated,
|
|
1840
|
+
versions=versions,
|
|
1841
|
+
)
|
|
1700
1842
|
|
|
1701
1843
|
def import_workflow(
|
|
1702
1844
|
self,
|
|
1703
|
-
file: str,
|
|
1704
|
-
|
|
1845
|
+
file: str | None = None,
|
|
1846
|
+
key: str | None = None,
|
|
1847
|
+
reset_id: bool = True,
|
|
1705
1848
|
) -> Workflow:
|
|
1706
1849
|
"""
|
|
1707
1850
|
Import object from a YAML file and create a new object into the backend.
|
|
@@ -1710,8 +1853,10 @@ class Project(Entity):
|
|
|
1710
1853
|
----------
|
|
1711
1854
|
file : str
|
|
1712
1855
|
Path to YAML file.
|
|
1713
|
-
|
|
1714
|
-
|
|
1856
|
+
key : str
|
|
1857
|
+
Entity key (store://...).
|
|
1858
|
+
reset_id : bool
|
|
1859
|
+
Flag to determine if the ID of context entities should be reset.
|
|
1715
1860
|
|
|
1716
1861
|
Returns
|
|
1717
1862
|
-------
|
|
@@ -1722,7 +1867,7 @@ class Project(Entity):
|
|
|
1722
1867
|
--------
|
|
1723
1868
|
>>> obj = project.import_workflow("my-workflow.yaml")
|
|
1724
1869
|
"""
|
|
1725
|
-
return import_workflow(file,
|
|
1870
|
+
return import_workflow(file, key, reset_id, self.name)
|
|
1726
1871
|
|
|
1727
1872
|
def update_workflow(self, entity: Workflow) -> Workflow:
|
|
1728
1873
|
"""
|
|
@@ -1752,7 +1897,6 @@ class Project(Entity):
|
|
|
1752
1897
|
entity_id: str | None = None,
|
|
1753
1898
|
delete_all_versions: bool = False,
|
|
1754
1899
|
cascade: bool = True,
|
|
1755
|
-
**kwargs,
|
|
1756
1900
|
) -> None:
|
|
1757
1901
|
"""
|
|
1758
1902
|
Delete object from backend.
|
|
@@ -1767,8 +1911,6 @@ class Project(Entity):
|
|
|
1767
1911
|
Delete all versions of the named entity. If True, use entity name instead of entity key as identifier.
|
|
1768
1912
|
cascade : bool
|
|
1769
1913
|
Cascade delete.
|
|
1770
|
-
**kwargs : dict
|
|
1771
|
-
Parameters to pass to the API call.
|
|
1772
1914
|
|
|
1773
1915
|
Returns
|
|
1774
1916
|
-------
|
|
@@ -1790,7 +1932,6 @@ class Project(Entity):
|
|
|
1790
1932
|
entity_id=entity_id,
|
|
1791
1933
|
delete_all_versions=delete_all_versions,
|
|
1792
1934
|
cascade=cascade,
|
|
1793
|
-
**kwargs,
|
|
1794
1935
|
)
|
|
1795
1936
|
self.refresh()
|
|
1796
1937
|
|
|
@@ -1855,7 +1996,6 @@ class Project(Entity):
|
|
|
1855
1996
|
self,
|
|
1856
1997
|
identifier: str,
|
|
1857
1998
|
entity_id: str | None = None,
|
|
1858
|
-
**kwargs,
|
|
1859
1999
|
) -> Secret:
|
|
1860
2000
|
"""
|
|
1861
2001
|
Get object from backend.
|
|
@@ -1866,8 +2006,6 @@ class Project(Entity):
|
|
|
1866
2006
|
Entity key (store://...) or entity name.
|
|
1867
2007
|
entity_id : str
|
|
1868
2008
|
Entity ID.
|
|
1869
|
-
**kwargs : dict
|
|
1870
|
-
Parameters to pass to the API call.
|
|
1871
2009
|
|
|
1872
2010
|
Returns
|
|
1873
2011
|
-------
|
|
@@ -1887,7 +2025,6 @@ class Project(Entity):
|
|
|
1887
2025
|
identifier=identifier,
|
|
1888
2026
|
project=self.name,
|
|
1889
2027
|
entity_id=entity_id,
|
|
1890
|
-
**kwargs,
|
|
1891
2028
|
)
|
|
1892
2029
|
self.refresh()
|
|
1893
2030
|
return obj
|
|
@@ -1895,7 +2032,6 @@ class Project(Entity):
|
|
|
1895
2032
|
def get_secret_versions(
|
|
1896
2033
|
self,
|
|
1897
2034
|
identifier: str,
|
|
1898
|
-
**kwargs,
|
|
1899
2035
|
) -> list[Secret]:
|
|
1900
2036
|
"""
|
|
1901
2037
|
Get object versions from backend.
|
|
@@ -1904,8 +2040,6 @@ class Project(Entity):
|
|
|
1904
2040
|
----------
|
|
1905
2041
|
identifier : str
|
|
1906
2042
|
Entity key (store://...) or entity name.
|
|
1907
|
-
**kwargs : dict
|
|
1908
|
-
Parameters to pass to the API call.
|
|
1909
2043
|
|
|
1910
2044
|
Returns
|
|
1911
2045
|
-------
|
|
@@ -1920,9 +2054,9 @@ class Project(Entity):
|
|
|
1920
2054
|
Using entity name:
|
|
1921
2055
|
>>> obj = project.get_secret_versions("my-secret-name")
|
|
1922
2056
|
"""
|
|
1923
|
-
return get_secret_versions(identifier, project=self.name
|
|
2057
|
+
return get_secret_versions(identifier, project=self.name)
|
|
1924
2058
|
|
|
1925
|
-
def list_secrets(self
|
|
2059
|
+
def list_secrets(self) -> list[Secret]:
|
|
1926
2060
|
"""
|
|
1927
2061
|
List all latest version objects from backend.
|
|
1928
2062
|
|
|
@@ -1940,12 +2074,13 @@ class Project(Entity):
|
|
|
1940
2074
|
--------
|
|
1941
2075
|
>>> objs = project.list_secrets()
|
|
1942
2076
|
"""
|
|
1943
|
-
return list_secrets(self.name
|
|
2077
|
+
return list_secrets(self.name)
|
|
1944
2078
|
|
|
1945
2079
|
def import_secret(
|
|
1946
2080
|
self,
|
|
1947
|
-
file: str,
|
|
1948
|
-
|
|
2081
|
+
file: str | None = None,
|
|
2082
|
+
key: str | None = None,
|
|
2083
|
+
reset_id: bool = True,
|
|
1949
2084
|
) -> Secret:
|
|
1950
2085
|
"""
|
|
1951
2086
|
Import object from a YAML file and create a new object into the backend.
|
|
@@ -1954,8 +2089,10 @@ class Project(Entity):
|
|
|
1954
2089
|
----------
|
|
1955
2090
|
file : str
|
|
1956
2091
|
Path to YAML file.
|
|
1957
|
-
|
|
1958
|
-
|
|
2092
|
+
key : str
|
|
2093
|
+
Entity key (store://...).
|
|
2094
|
+
reset_id : bool
|
|
2095
|
+
Flag to determine if the ID of context entities should be reset.
|
|
1959
2096
|
|
|
1960
2097
|
Returns
|
|
1961
2098
|
-------
|
|
@@ -1966,7 +2103,7 @@ class Project(Entity):
|
|
|
1966
2103
|
--------
|
|
1967
2104
|
>>> obj = project.import_secret("my-secret.yaml")
|
|
1968
2105
|
"""
|
|
1969
|
-
return import_secret(file,
|
|
2106
|
+
return import_secret(file, key, reset_id, self.name)
|
|
1970
2107
|
|
|
1971
2108
|
def update_secret(self, entity: Secret) -> Secret:
|
|
1972
2109
|
"""
|
|
@@ -1995,7 +2132,6 @@ class Project(Entity):
|
|
|
1995
2132
|
identifier: str,
|
|
1996
2133
|
entity_id: str | None = None,
|
|
1997
2134
|
delete_all_versions: bool = False,
|
|
1998
|
-
**kwargs,
|
|
1999
2135
|
) -> None:
|
|
2000
2136
|
"""
|
|
2001
2137
|
Delete object from backend.
|
|
@@ -2008,8 +2144,6 @@ class Project(Entity):
|
|
|
2008
2144
|
Entity ID.
|
|
2009
2145
|
delete_all_versions : bool
|
|
2010
2146
|
Delete all versions of the named entity. If True, use entity name instead of entity key as identifier.
|
|
2011
|
-
**kwargs : dict
|
|
2012
|
-
Parameters to pass to the API call.
|
|
2013
2147
|
|
|
2014
2148
|
Returns
|
|
2015
2149
|
-------
|
|
@@ -2030,7 +2164,6 @@ class Project(Entity):
|
|
|
2030
2164
|
project=self.name,
|
|
2031
2165
|
entity_id=entity_id,
|
|
2032
2166
|
delete_all_versions=delete_all_versions,
|
|
2033
|
-
**kwargs,
|
|
2034
2167
|
)
|
|
2035
2168
|
self.refresh()
|
|
2036
2169
|
|
|
@@ -2041,7 +2174,6 @@ class Project(Entity):
|
|
|
2041
2174
|
def get_run(
|
|
2042
2175
|
self,
|
|
2043
2176
|
identifier: str,
|
|
2044
|
-
**kwargs,
|
|
2045
2177
|
) -> Run:
|
|
2046
2178
|
"""
|
|
2047
2179
|
Get object from backend.
|
|
@@ -2050,8 +2182,6 @@ class Project(Entity):
|
|
|
2050
2182
|
----------
|
|
2051
2183
|
identifier : str
|
|
2052
2184
|
Entity key (store://...) or entity ID.
|
|
2053
|
-
**kwargs : dict
|
|
2054
|
-
Parameters to pass to the API call.
|
|
2055
2185
|
|
|
2056
2186
|
Returns
|
|
2057
2187
|
-------
|
|
@@ -2069,19 +2199,51 @@ class Project(Entity):
|
|
|
2069
2199
|
obj = get_run(
|
|
2070
2200
|
identifier=identifier,
|
|
2071
2201
|
project=self.name,
|
|
2072
|
-
**kwargs,
|
|
2073
2202
|
)
|
|
2074
2203
|
self.refresh()
|
|
2075
2204
|
return obj
|
|
2076
2205
|
|
|
2077
|
-
def list_runs(
|
|
2206
|
+
def list_runs(
|
|
2207
|
+
self,
|
|
2208
|
+
q: str | None = None,
|
|
2209
|
+
name: str | None = None,
|
|
2210
|
+
kind: str | None = None,
|
|
2211
|
+
user: str | None = None,
|
|
2212
|
+
state: str | None = None,
|
|
2213
|
+
created: str | None = None,
|
|
2214
|
+
updated: str | None = None,
|
|
2215
|
+
function: str | None = None,
|
|
2216
|
+
workflow: str | None = None,
|
|
2217
|
+
task: str | None = None,
|
|
2218
|
+
action: str | None = None,
|
|
2219
|
+
) -> list[Run]:
|
|
2078
2220
|
"""
|
|
2079
2221
|
List all latest objects from backend.
|
|
2080
2222
|
|
|
2081
2223
|
Parameters
|
|
2082
2224
|
----------
|
|
2083
|
-
|
|
2084
|
-
|
|
2225
|
+
q : str
|
|
2226
|
+
Query string to filter objects.
|
|
2227
|
+
name : str
|
|
2228
|
+
Object name.
|
|
2229
|
+
kind : str
|
|
2230
|
+
Kind of the object.
|
|
2231
|
+
user : str
|
|
2232
|
+
User that created the object.
|
|
2233
|
+
state : str
|
|
2234
|
+
Object state.
|
|
2235
|
+
created : str
|
|
2236
|
+
Creation date filter.
|
|
2237
|
+
updated : str
|
|
2238
|
+
Update date filter.
|
|
2239
|
+
function : str
|
|
2240
|
+
Function key filter.
|
|
2241
|
+
workflow : str
|
|
2242
|
+
Workflow key filter.
|
|
2243
|
+
task : str
|
|
2244
|
+
Task string filter.
|
|
2245
|
+
action : str
|
|
2246
|
+
Action name filter.
|
|
2085
2247
|
|
|
2086
2248
|
Returns
|
|
2087
2249
|
-------
|
|
@@ -2092,12 +2254,25 @@ class Project(Entity):
|
|
|
2092
2254
|
--------
|
|
2093
2255
|
>>> objs = project.list_runs()
|
|
2094
2256
|
"""
|
|
2095
|
-
return list_runs(
|
|
2257
|
+
return list_runs(
|
|
2258
|
+
self.name,
|
|
2259
|
+
q=q,
|
|
2260
|
+
name=name,
|
|
2261
|
+
kind=kind,
|
|
2262
|
+
user=user,
|
|
2263
|
+
state=state,
|
|
2264
|
+
created=created,
|
|
2265
|
+
updated=updated,
|
|
2266
|
+
function=function,
|
|
2267
|
+
workflow=workflow,
|
|
2268
|
+
task=task,
|
|
2269
|
+
action=action,
|
|
2270
|
+
)
|
|
2096
2271
|
|
|
2097
2272
|
def delete_run(
|
|
2098
2273
|
self,
|
|
2099
2274
|
identifier: str,
|
|
2100
|
-
|
|
2275
|
+
entity_id: str,
|
|
2101
2276
|
) -> None:
|
|
2102
2277
|
"""
|
|
2103
2278
|
Delete run from backend.
|
|
@@ -2105,9 +2280,9 @@ class Project(Entity):
|
|
|
2105
2280
|
Parameters
|
|
2106
2281
|
----------
|
|
2107
2282
|
identifier : str
|
|
2108
|
-
Entity key (store://...) or entity
|
|
2109
|
-
|
|
2110
|
-
|
|
2283
|
+
Entity key (store://...) or entity name.
|
|
2284
|
+
entity_id : str
|
|
2285
|
+
Entity ID.
|
|
2111
2286
|
|
|
2112
2287
|
Returns
|
|
2113
2288
|
-------
|
|
@@ -2122,7 +2297,7 @@ class Project(Entity):
|
|
|
2122
2297
|
delete_run(
|
|
2123
2298
|
identifier=identifier,
|
|
2124
2299
|
project=self.name,
|
|
2125
|
-
|
|
2300
|
+
entity_id=entity_id,
|
|
2126
2301
|
)
|
|
2127
2302
|
self.refresh()
|
|
2128
2303
|
|
|
@@ -2177,7 +2352,6 @@ class Project(Entity):
|
|
|
2177
2352
|
entity_name=self.name,
|
|
2178
2353
|
user=user,
|
|
2179
2354
|
unshare=False,
|
|
2180
|
-
local=self._client.is_local(),
|
|
2181
2355
|
)
|
|
2182
2356
|
|
|
2183
2357
|
def unshare(self, user: str) -> None:
|
|
@@ -2197,5 +2371,4 @@ class Project(Entity):
|
|
|
2197
2371
|
entity_name=self.name,
|
|
2198
2372
|
user=user,
|
|
2199
2373
|
unshare=True,
|
|
2200
|
-
local=self._client.is_local(),
|
|
2201
2374
|
)
|