tracdap-runtime 0.7.0rc1__py3-none-any.whl → 0.8.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- tracdap/rt/_impl/core/__init__.py +14 -0
- tracdap/rt/_impl/{config_parser.py → core/config_parser.py} +61 -36
- tracdap/rt/_impl/{data.py → core/data.py} +136 -32
- tracdap/rt/_impl/core/logging.py +195 -0
- tracdap/rt/_impl/{models.py → core/models.py} +15 -12
- tracdap/rt/_impl/{repos.py → core/repos.py} +12 -3
- tracdap/rt/_impl/{schemas.py → core/schemas.py} +5 -5
- tracdap/rt/_impl/{shim.py → core/shim.py} +5 -4
- tracdap/rt/_impl/{storage.py → core/storage.py} +21 -10
- tracdap/rt/_impl/core/struct.py +547 -0
- tracdap/rt/_impl/{type_system.py → core/type_system.py} +73 -33
- tracdap/rt/_impl/{util.py → core/util.py} +1 -111
- tracdap/rt/_impl/{validation.py → core/validation.py} +99 -31
- tracdap/rt/_impl/exec/__init__.py +14 -0
- tracdap/rt/{_exec → _impl/exec}/actors.py +12 -14
- tracdap/rt/{_exec → _impl/exec}/context.py +228 -82
- tracdap/rt/{_exec → _impl/exec}/dev_mode.py +176 -89
- tracdap/rt/{_exec → _impl/exec}/engine.py +230 -105
- tracdap/rt/{_exec → _impl/exec}/functions.py +191 -100
- tracdap/rt/{_exec → _impl/exec}/graph.py +24 -36
- tracdap/rt/{_exec → _impl/exec}/graph_builder.py +252 -115
- tracdap/rt/_impl/grpc/codec.py +1 -1
- tracdap/rt/{_exec → _impl/grpc}/server.py +7 -6
- tracdap/rt/_impl/grpc/tracdap/api/internal/runtime_pb2.py +3 -3
- tracdap/rt/_impl/grpc/tracdap/api/internal/runtime_pb2_grpc.py +1 -1
- tracdap/rt/_impl/grpc/tracdap/metadata/common_pb2.py +1 -1
- tracdap/rt/_impl/grpc/tracdap/metadata/config_pb2.py +40 -0
- tracdap/rt/_impl/grpc/tracdap/metadata/config_pb2.pyi +62 -0
- tracdap/rt/_impl/grpc/tracdap/metadata/custom_pb2.py +1 -1
- tracdap/rt/_impl/grpc/tracdap/metadata/data_pb2.py +32 -20
- tracdap/rt/_impl/grpc/tracdap/metadata/data_pb2.pyi +48 -2
- tracdap/rt/_impl/grpc/tracdap/metadata/file_pb2.py +4 -2
- tracdap/rt/_impl/grpc/tracdap/metadata/file_pb2.pyi +8 -0
- tracdap/rt/_impl/grpc/tracdap/metadata/flow_pb2.py +1 -1
- tracdap/rt/_impl/grpc/tracdap/metadata/job_pb2.py +65 -63
- tracdap/rt/_impl/grpc/tracdap/metadata/job_pb2.pyi +16 -2
- tracdap/rt/_impl/grpc/tracdap/metadata/model_pb2.py +28 -26
- tracdap/rt/_impl/grpc/tracdap/metadata/model_pb2.pyi +14 -4
- tracdap/rt/_impl/grpc/tracdap/metadata/object_id_pb2.py +4 -4
- tracdap/rt/_impl/grpc/tracdap/metadata/object_id_pb2.pyi +6 -0
- tracdap/rt/_impl/grpc/tracdap/metadata/object_pb2.py +9 -7
- tracdap/rt/_impl/grpc/tracdap/metadata/object_pb2.pyi +12 -4
- tracdap/rt/_impl/grpc/tracdap/metadata/resource_pb2.py +18 -5
- tracdap/rt/_impl/grpc/tracdap/metadata/resource_pb2.pyi +42 -2
- tracdap/rt/_impl/grpc/tracdap/metadata/search_pb2.py +1 -1
- tracdap/rt/_impl/grpc/tracdap/metadata/{stoarge_pb2.py → storage_pb2.py} +4 -4
- tracdap/rt/_impl/grpc/tracdap/metadata/tag_pb2.py +1 -1
- tracdap/rt/_impl/grpc/tracdap/metadata/tag_update_pb2.py +1 -1
- tracdap/rt/_impl/grpc/tracdap/metadata/type_pb2.py +1 -1
- tracdap/rt/{_exec → _impl}/runtime.py +32 -18
- tracdap/rt/_impl/static_api.py +66 -38
- tracdap/rt/_plugins/format_csv.py +1 -1
- tracdap/rt/_plugins/repo_git.py +56 -11
- tracdap/rt/_plugins/storage_sql.py +13 -6
- tracdap/rt/_version.py +1 -1
- tracdap/rt/api/__init__.py +5 -24
- tracdap/rt/api/constants.py +57 -0
- tracdap/rt/api/experimental.py +32 -0
- tracdap/rt/api/hook.py +26 -7
- tracdap/rt/api/model_api.py +16 -0
- tracdap/rt/api/static_api.py +265 -127
- tracdap/rt/config/__init__.py +11 -11
- tracdap/rt/config/common.py +2 -26
- tracdap/rt/config/dynamic.py +28 -0
- tracdap/rt/config/platform.py +17 -31
- tracdap/rt/config/runtime.py +2 -0
- tracdap/rt/ext/embed.py +2 -2
- tracdap/rt/ext/plugins.py +3 -3
- tracdap/rt/launch/launch.py +12 -14
- tracdap/rt/metadata/__init__.py +31 -21
- tracdap/rt/metadata/config.py +95 -0
- tracdap/rt/metadata/data.py +40 -0
- tracdap/rt/metadata/file.py +10 -0
- tracdap/rt/metadata/job.py +16 -0
- tracdap/rt/metadata/model.py +12 -2
- tracdap/rt/metadata/object.py +9 -1
- tracdap/rt/metadata/object_id.py +6 -0
- tracdap/rt/metadata/resource.py +41 -1
- {tracdap_runtime-0.7.0rc1.dist-info → tracdap_runtime-0.8.0.dist-info}/METADATA +33 -27
- tracdap_runtime-0.8.0.dist-info/RECORD +129 -0
- {tracdap_runtime-0.7.0rc1.dist-info → tracdap_runtime-0.8.0.dist-info}/WHEEL +1 -1
- tracdap/rt/_exec/__init__.py +0 -0
- tracdap_runtime-0.7.0rc1.dist-info/RECORD +0 -121
- /tracdap/rt/_impl/{guard_rails.py → core/guard_rails.py} +0 -0
- /tracdap/rt/_impl/grpc/tracdap/metadata/{stoarge_pb2.pyi → storage_pb2.pyi} +0 -0
- /tracdap/rt/metadata/{stoarge.py → storage.py} +0 -0
- {tracdap_runtime-0.7.0rc1.dist-info → tracdap_runtime-0.8.0.dist-info/licenses}/LICENSE +0 -0
- {tracdap_runtime-0.7.0rc1.dist-info → tracdap_runtime-0.8.0.dist-info}/top_level.txt +0 -0
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/rt/_impl/grpc/tracdap/metadata/model.proto
|
4
|
-
# Protobuf Python Version: 4.25.
|
4
|
+
# Protobuf Python Version: 4.25.5
|
5
5
|
"""Generated protocol buffer code."""
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
@@ -13,10 +13,12 @@ _sym_db = _symbol_database.Default()
|
|
13
13
|
|
14
14
|
|
15
15
|
from tracdap.rt._impl.grpc.tracdap.metadata import type_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_type__pb2
|
16
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import object_id_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_object__id__pb2
|
16
17
|
from tracdap.rt._impl.grpc.tracdap.metadata import data_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_data__pb2
|
18
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import file_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_file__pb2
|
17
19
|
|
18
20
|
|
19
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n2tracdap/rt/_impl/grpc/tracdap/metadata/model.proto\x12\x10tracdap.metadata\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/type.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/data.proto\"\xab\x02\n\x0eModelParameter\x12\x33\n\tparamType\x18\x01 \x01(\x0b\x32 .tracdap.metadata.TypeDescriptor\x12\r\n\x05label\x18\x02 \x01(\t\x12\x32\n\x0c\x64\x65\x66\x61ultValue\x18\x03 \x01(\x0b\x32\x17.tracdap.metadata.ValueH\x00\x88\x01\x01\x12\x44\n\nparamProps\x18\x04 \x03(\x0b\x32\x30.tracdap.metadata.ModelParameter.ParamPropsEntry\x1aJ\n\x0fParamPropsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.tracdap.metadata.Value:\x02\x38\x01\x42\x0f\n\r_defaultValue\"\
|
21
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n2tracdap/rt/_impl/grpc/tracdap/metadata/model.proto\x12\x10tracdap.metadata\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/type.proto\x1a\x36tracdap/rt/_impl/grpc/tracdap/metadata/object_id.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/data.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/file.proto\"\xab\x02\n\x0eModelParameter\x12\x33\n\tparamType\x18\x01 \x01(\x0b\x32 .tracdap.metadata.TypeDescriptor\x12\r\n\x05label\x18\x02 \x01(\t\x12\x32\n\x0c\x64\x65\x66\x61ultValue\x18\x03 \x01(\x0b\x32\x17.tracdap.metadata.ValueH\x00\x88\x01\x01\x12\x44\n\nparamProps\x18\x04 \x03(\x0b\x32\x30.tracdap.metadata.ModelParameter.ParamPropsEntry\x1aJ\n\x0fParamPropsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.tracdap.metadata.Value:\x02\x38\x01\x42\x0f\n\r_defaultValue\"\x8e\x03\n\x10ModelInputSchema\x12\x30\n\nobjectType\x18\x06 \x01(\x0e\x32\x1c.tracdap.metadata.ObjectType\x12\x34\n\x06schema\x18\x01 \x01(\x0b\x32\".tracdap.metadata.SchemaDefinitionH\x00\x12.\n\x08\x66ileType\x18\x07 \x01(\x0b\x32\x1a.tracdap.metadata.FileTypeH\x00\x12\x12\n\x05label\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x08optional\x18\x03 \x01(\x08\x12\x0f\n\x07\x64ynamic\x18\x05 \x01(\x08\x12\x46\n\ninputProps\x18\x04 \x03(\x0b\x32\x32.tracdap.metadata.ModelInputSchema.InputPropsEntry\x1aJ\n\x0fInputPropsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.tracdap.metadata.Value:\x02\x38\x01\x42\r\n\x0brequirementB\x08\n\x06_label\"\x93\x03\n\x11ModelOutputSchema\x12\x30\n\nobjectType\x18\x06 \x01(\x0e\x32\x1c.tracdap.metadata.ObjectType\x12\x34\n\x06schema\x18\x01 \x01(\x0b\x32\".tracdap.metadata.SchemaDefinitionH\x00\x12.\n\x08\x66ileType\x18\x07 \x01(\x0b\x32\x1a.tracdap.metadata.FileTypeH\x00\x12\x12\n\x05label\x18\x02 \x01(\tH\x01\x88\x01\x01\x12\x10\n\x08optional\x18\x03 \x01(\x08\x12\x0f\n\x07\x64ynamic\x18\x05 \x01(\x08\x12I\n\x0boutputProps\x18\x04 \x03(\x0b\x32\x34.tracdap.metadata.ModelOutputSchema.OutputPropsEntry\x1aK\n\x10OutputPropsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.tracdap.metadata.Value:\x02\x38\x01\x42\r\n\x0brequirementB\x08\n\x06_label\"\xce\x06\n\x0fModelDefinition\x12\x10\n\x08language\x18\x01 \x01(\t\x12\x12\n\nrepository\x18\x02 \x01(\t\x12\x19\n\x0cpackageGroup\x18\n \x01(\tH\x00\x88\x01\x01\x12\x0f\n\x07package\x18\x0b \x01(\t\x12\x0f\n\x07version\x18\x06 \x01(\t\x12\x12\n\nentryPoint\x18\x05 \x01(\t\x12\x11\n\x04path\x18\x03 \x01(\tH\x01\x88\x01\x01\x12\x45\n\nparameters\x18\x07 \x03(\x0b\x32\x31.tracdap.metadata.ModelDefinition.ParametersEntry\x12=\n\x06inputs\x18\x08 \x03(\x0b\x32-.tracdap.metadata.ModelDefinition.InputsEntry\x12?\n\x07outputs\x18\t \x03(\x0b\x32..tracdap.metadata.ModelDefinition.OutputsEntry\x12Q\n\x10staticAttributes\x18\x0c \x03(\x0b\x32\x37.tracdap.metadata.ModelDefinition.StaticAttributesEntry\x12.\n\tmodelType\x18\r \x01(\x0e\x32\x1b.tracdap.metadata.ModelType\x1aS\n\x0fParametersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12/\n\x05value\x18\x02 \x01(\x0b\x32 .tracdap.metadata.ModelParameter:\x02\x38\x01\x1aQ\n\x0bInputsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x31\n\x05value\x18\x02 \x01(\x0b\x32\".tracdap.metadata.ModelInputSchema:\x02\x38\x01\x1aS\n\x0cOutputsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x32\n\x05value\x18\x02 \x01(\x0b\x32#.tracdap.metadata.ModelOutputSchema:\x02\x38\x01\x1aP\n\x15StaticAttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.tracdap.metadata.Value:\x02\x38\x01\x42\x0f\n\r_packageGroupB\x07\n\x05_path*M\n\tModelType\x12\x12\n\x0eSTANDARD_MODEL\x10\x00\x12\x15\n\x11\x44\x41TA_IMPORT_MODEL\x10\x01\x12\x15\n\x11\x44\x41TA_EXPORT_MODEL\x10\x02\x42\x1e\n\x1aorg.finos.tracdap.metadataP\x01\x62\x06proto3')
|
20
22
|
|
21
23
|
_globals = globals()
|
22
24
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
@@ -38,28 +40,28 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
38
40
|
_globals['_MODELDEFINITION_OUTPUTSENTRY']._serialized_options = b'8\001'
|
39
41
|
_globals['_MODELDEFINITION_STATICATTRIBUTESENTRY']._options = None
|
40
42
|
_globals['_MODELDEFINITION_STATICATTRIBUTESENTRY']._serialized_options = b'8\001'
|
41
|
-
_globals['_MODELTYPE']._serialized_start=
|
42
|
-
_globals['_MODELTYPE']._serialized_end=
|
43
|
-
_globals['_MODELPARAMETER']._serialized_start=
|
44
|
-
_globals['_MODELPARAMETER']._serialized_end=
|
45
|
-
_globals['_MODELPARAMETER_PARAMPROPSENTRY']._serialized_start=
|
46
|
-
_globals['_MODELPARAMETER_PARAMPROPSENTRY']._serialized_end=
|
47
|
-
_globals['_MODELINPUTSCHEMA']._serialized_start=
|
48
|
-
_globals['_MODELINPUTSCHEMA']._serialized_end=
|
49
|
-
_globals['_MODELINPUTSCHEMA_INPUTPROPSENTRY']._serialized_start=
|
50
|
-
_globals['_MODELINPUTSCHEMA_INPUTPROPSENTRY']._serialized_end=
|
51
|
-
_globals['_MODELOUTPUTSCHEMA']._serialized_start=
|
52
|
-
_globals['_MODELOUTPUTSCHEMA']._serialized_end=
|
53
|
-
_globals['_MODELOUTPUTSCHEMA_OUTPUTPROPSENTRY']._serialized_start=
|
54
|
-
_globals['_MODELOUTPUTSCHEMA_OUTPUTPROPSENTRY']._serialized_end=
|
55
|
-
_globals['_MODELDEFINITION']._serialized_start=
|
56
|
-
_globals['_MODELDEFINITION']._serialized_end=
|
57
|
-
_globals['_MODELDEFINITION_PARAMETERSENTRY']._serialized_start=
|
58
|
-
_globals['_MODELDEFINITION_PARAMETERSENTRY']._serialized_end=
|
59
|
-
_globals['_MODELDEFINITION_INPUTSENTRY']._serialized_start=
|
60
|
-
_globals['_MODELDEFINITION_INPUTSENTRY']._serialized_end=
|
61
|
-
_globals['_MODELDEFINITION_OUTPUTSENTRY']._serialized_start=
|
62
|
-
_globals['_MODELDEFINITION_OUTPUTSENTRY']._serialized_end=
|
63
|
-
_globals['_MODELDEFINITION_STATICATTRIBUTESENTRY']._serialized_start=
|
64
|
-
_globals['_MODELDEFINITION_STATICATTRIBUTESENTRY']._serialized_end=
|
43
|
+
_globals['_MODELTYPE']._serialized_start=2239
|
44
|
+
_globals['_MODELTYPE']._serialized_end=2316
|
45
|
+
_globals['_MODELPARAMETER']._serialized_start=282
|
46
|
+
_globals['_MODELPARAMETER']._serialized_end=581
|
47
|
+
_globals['_MODELPARAMETER_PARAMPROPSENTRY']._serialized_start=490
|
48
|
+
_globals['_MODELPARAMETER_PARAMPROPSENTRY']._serialized_end=564
|
49
|
+
_globals['_MODELINPUTSCHEMA']._serialized_start=584
|
50
|
+
_globals['_MODELINPUTSCHEMA']._serialized_end=982
|
51
|
+
_globals['_MODELINPUTSCHEMA_INPUTPROPSENTRY']._serialized_start=883
|
52
|
+
_globals['_MODELINPUTSCHEMA_INPUTPROPSENTRY']._serialized_end=957
|
53
|
+
_globals['_MODELOUTPUTSCHEMA']._serialized_start=985
|
54
|
+
_globals['_MODELOUTPUTSCHEMA']._serialized_end=1388
|
55
|
+
_globals['_MODELOUTPUTSCHEMA_OUTPUTPROPSENTRY']._serialized_start=1288
|
56
|
+
_globals['_MODELOUTPUTSCHEMA_OUTPUTPROPSENTRY']._serialized_end=1363
|
57
|
+
_globals['_MODELDEFINITION']._serialized_start=1391
|
58
|
+
_globals['_MODELDEFINITION']._serialized_end=2237
|
59
|
+
_globals['_MODELDEFINITION_PARAMETERSENTRY']._serialized_start=1878
|
60
|
+
_globals['_MODELDEFINITION_PARAMETERSENTRY']._serialized_end=1961
|
61
|
+
_globals['_MODELDEFINITION_INPUTSENTRY']._serialized_start=1963
|
62
|
+
_globals['_MODELDEFINITION_INPUTSENTRY']._serialized_end=2044
|
63
|
+
_globals['_MODELDEFINITION_OUTPUTSENTRY']._serialized_start=2046
|
64
|
+
_globals['_MODELDEFINITION_OUTPUTSENTRY']._serialized_end=2129
|
65
|
+
_globals['_MODELDEFINITION_STATICATTRIBUTESENTRY']._serialized_start=2131
|
66
|
+
_globals['_MODELDEFINITION_STATICATTRIBUTESENTRY']._serialized_end=2211
|
65
67
|
# @@protoc_insertion_point(module_scope)
|
@@ -1,5 +1,7 @@
|
|
1
1
|
from tracdap.rt._impl.grpc.tracdap.metadata import type_pb2 as _type_pb2
|
2
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import object_id_pb2 as _object_id_pb2
|
2
3
|
from tracdap.rt._impl.grpc.tracdap.metadata import data_pb2 as _data_pb2
|
4
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import file_pb2 as _file_pb2
|
3
5
|
from google.protobuf.internal import containers as _containers
|
4
6
|
from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
|
5
7
|
from google.protobuf import descriptor as _descriptor
|
@@ -37,7 +39,7 @@ class ModelParameter(_message.Message):
|
|
37
39
|
def __init__(self, paramType: _Optional[_Union[_type_pb2.TypeDescriptor, _Mapping]] = ..., label: _Optional[str] = ..., defaultValue: _Optional[_Union[_type_pb2.Value, _Mapping]] = ..., paramProps: _Optional[_Mapping[str, _type_pb2.Value]] = ...) -> None: ...
|
38
40
|
|
39
41
|
class ModelInputSchema(_message.Message):
|
40
|
-
__slots__ = ("schema", "label", "optional", "dynamic", "inputProps")
|
42
|
+
__slots__ = ("objectType", "schema", "fileType", "label", "optional", "dynamic", "inputProps")
|
41
43
|
class InputPropsEntry(_message.Message):
|
42
44
|
__slots__ = ("key", "value")
|
43
45
|
KEY_FIELD_NUMBER: _ClassVar[int]
|
@@ -45,20 +47,24 @@ class ModelInputSchema(_message.Message):
|
|
45
47
|
key: str
|
46
48
|
value: _type_pb2.Value
|
47
49
|
def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[_type_pb2.Value, _Mapping]] = ...) -> None: ...
|
50
|
+
OBJECTTYPE_FIELD_NUMBER: _ClassVar[int]
|
48
51
|
SCHEMA_FIELD_NUMBER: _ClassVar[int]
|
52
|
+
FILETYPE_FIELD_NUMBER: _ClassVar[int]
|
49
53
|
LABEL_FIELD_NUMBER: _ClassVar[int]
|
50
54
|
OPTIONAL_FIELD_NUMBER: _ClassVar[int]
|
51
55
|
DYNAMIC_FIELD_NUMBER: _ClassVar[int]
|
52
56
|
INPUTPROPS_FIELD_NUMBER: _ClassVar[int]
|
57
|
+
objectType: _object_id_pb2.ObjectType
|
53
58
|
schema: _data_pb2.SchemaDefinition
|
59
|
+
fileType: _file_pb2.FileType
|
54
60
|
label: str
|
55
61
|
optional: bool
|
56
62
|
dynamic: bool
|
57
63
|
inputProps: _containers.MessageMap[str, _type_pb2.Value]
|
58
|
-
def __init__(self, schema: _Optional[_Union[_data_pb2.SchemaDefinition, _Mapping]] = ..., label: _Optional[str] = ..., optional: bool = ..., dynamic: bool = ..., inputProps: _Optional[_Mapping[str, _type_pb2.Value]] = ...) -> None: ...
|
64
|
+
def __init__(self, objectType: _Optional[_Union[_object_id_pb2.ObjectType, str]] = ..., schema: _Optional[_Union[_data_pb2.SchemaDefinition, _Mapping]] = ..., fileType: _Optional[_Union[_file_pb2.FileType, _Mapping]] = ..., label: _Optional[str] = ..., optional: bool = ..., dynamic: bool = ..., inputProps: _Optional[_Mapping[str, _type_pb2.Value]] = ...) -> None: ...
|
59
65
|
|
60
66
|
class ModelOutputSchema(_message.Message):
|
61
|
-
__slots__ = ("schema", "label", "optional", "dynamic", "outputProps")
|
67
|
+
__slots__ = ("objectType", "schema", "fileType", "label", "optional", "dynamic", "outputProps")
|
62
68
|
class OutputPropsEntry(_message.Message):
|
63
69
|
__slots__ = ("key", "value")
|
64
70
|
KEY_FIELD_NUMBER: _ClassVar[int]
|
@@ -66,17 +72,21 @@ class ModelOutputSchema(_message.Message):
|
|
66
72
|
key: str
|
67
73
|
value: _type_pb2.Value
|
68
74
|
def __init__(self, key: _Optional[str] = ..., value: _Optional[_Union[_type_pb2.Value, _Mapping]] = ...) -> None: ...
|
75
|
+
OBJECTTYPE_FIELD_NUMBER: _ClassVar[int]
|
69
76
|
SCHEMA_FIELD_NUMBER: _ClassVar[int]
|
77
|
+
FILETYPE_FIELD_NUMBER: _ClassVar[int]
|
70
78
|
LABEL_FIELD_NUMBER: _ClassVar[int]
|
71
79
|
OPTIONAL_FIELD_NUMBER: _ClassVar[int]
|
72
80
|
DYNAMIC_FIELD_NUMBER: _ClassVar[int]
|
73
81
|
OUTPUTPROPS_FIELD_NUMBER: _ClassVar[int]
|
82
|
+
objectType: _object_id_pb2.ObjectType
|
74
83
|
schema: _data_pb2.SchemaDefinition
|
84
|
+
fileType: _file_pb2.FileType
|
75
85
|
label: str
|
76
86
|
optional: bool
|
77
87
|
dynamic: bool
|
78
88
|
outputProps: _containers.MessageMap[str, _type_pb2.Value]
|
79
|
-
def __init__(self, schema: _Optional[_Union[_data_pb2.SchemaDefinition, _Mapping]] = ..., label: _Optional[str] = ..., optional: bool = ..., dynamic: bool = ..., outputProps: _Optional[_Mapping[str, _type_pb2.Value]] = ...) -> None: ...
|
89
|
+
def __init__(self, objectType: _Optional[_Union[_object_id_pb2.ObjectType, str]] = ..., schema: _Optional[_Union[_data_pb2.SchemaDefinition, _Mapping]] = ..., fileType: _Optional[_Union[_file_pb2.FileType, _Mapping]] = ..., label: _Optional[str] = ..., optional: bool = ..., dynamic: bool = ..., outputProps: _Optional[_Mapping[str, _type_pb2.Value]] = ...) -> None: ...
|
80
90
|
|
81
91
|
class ModelDefinition(_message.Message):
|
82
92
|
__slots__ = ("language", "repository", "packageGroup", "package", "version", "entryPoint", "path", "parameters", "inputs", "outputs", "staticAttributes", "modelType")
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/rt/_impl/grpc/tracdap/metadata/object_id.proto
|
4
|
-
# Protobuf Python Version: 4.25.
|
4
|
+
# Protobuf Python Version: 4.25.5
|
5
5
|
"""Generated protocol buffer code."""
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
@@ -15,7 +15,7 @@ _sym_db = _symbol_database.Default()
|
|
15
15
|
from tracdap.rt._impl.grpc.tracdap.metadata import type_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_type__pb2
|
16
16
|
|
17
17
|
|
18
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n6tracdap/rt/_impl/grpc/tracdap/metadata/object_id.proto\x12\x10tracdap.metadata\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/type.proto\"\x98\x02\n\tTagHeader\x12\x30\n\nobjectType\x18\x01 \x01(\x0e\x32\x1c.tracdap.metadata.ObjectType\x12\x10\n\x08objectId\x18\x02 \x01(\t\x12\x15\n\robjectVersion\x18\x03 \x01(\x05\x12\x38\n\x0fobjectTimestamp\x18\x04 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValue\x12\x12\n\ntagVersion\x18\x05 \x01(\x05\x12\x35\n\x0ctagTimestamp\x18\x06 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValue\x12\x16\n\x0eisLatestObject\x18\x07 \x01(\x08\x12\x13\n\x0bisLatestTag\x18\x08 \x01(\x08\"\xb9\x02\n\x0bTagSelector\x12\x30\n\nobjectType\x18\x01 \x01(\x0e\x32\x1c.tracdap.metadata.ObjectType\x12\x10\n\x08objectId\x18\x02 \x01(\t\x12\x16\n\x0clatestObject\x18\x03 \x01(\x08H\x00\x12\x17\n\robjectVersion\x18\x04 \x01(\x05H\x00\x12\x35\n\nobjectAsOf\x18\x05 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValueH\x00\x12\x13\n\tlatestTag\x18\x06 \x01(\x08H\x01\x12\x14\n\ntagVersion\x18\x07 \x01(\x05H\x01\x12\x32\n\x07tagAsOf\x18\x08 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValueH\x01\x42\x10\n\x0eobjectCriteriaB\r\n\x0btagCriteria
|
18
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n6tracdap/rt/_impl/grpc/tracdap/metadata/object_id.proto\x12\x10tracdap.metadata\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/type.proto\"\x98\x02\n\tTagHeader\x12\x30\n\nobjectType\x18\x01 \x01(\x0e\x32\x1c.tracdap.metadata.ObjectType\x12\x10\n\x08objectId\x18\x02 \x01(\t\x12\x15\n\robjectVersion\x18\x03 \x01(\x05\x12\x38\n\x0fobjectTimestamp\x18\x04 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValue\x12\x12\n\ntagVersion\x18\x05 \x01(\x05\x12\x35\n\x0ctagTimestamp\x18\x06 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValue\x12\x16\n\x0eisLatestObject\x18\x07 \x01(\x08\x12\x13\n\x0bisLatestTag\x18\x08 \x01(\x08\"\xb9\x02\n\x0bTagSelector\x12\x30\n\nobjectType\x18\x01 \x01(\x0e\x32\x1c.tracdap.metadata.ObjectType\x12\x10\n\x08objectId\x18\x02 \x01(\t\x12\x16\n\x0clatestObject\x18\x03 \x01(\x08H\x00\x12\x17\n\robjectVersion\x18\x04 \x01(\x05H\x00\x12\x35\n\nobjectAsOf\x18\x05 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValueH\x00\x12\x13\n\tlatestTag\x18\x06 \x01(\x08H\x01\x12\x14\n\ntagVersion\x18\x07 \x01(\x05H\x01\x12\x32\n\x07tagAsOf\x18\x08 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValueH\x01\x42\x10\n\x0eobjectCriteriaB\r\n\x0btagCriteria*\xa2\x01\n\nObjectType\x12\x17\n\x13OBJECT_TYPE_NOT_SET\x10\x00\x12\x08\n\x04\x44\x41TA\x10\x01\x12\t\n\x05MODEL\x10\x02\x12\x08\n\x04\x46LOW\x10\x03\x12\x07\n\x03JOB\x10\x04\x12\x08\n\x04\x46ILE\x10\x05\x12\n\n\x06\x43USTOM\x10\x06\x12\x0b\n\x07STORAGE\x10\x07\x12\n\n\x06SCHEMA\x10\x08\x12\n\n\x06RESULT\x10\t\x12\n\n\x06\x43ONFIG\x10\n\x12\x0c\n\x08RESOURCE\x10\x0b\x42\x1e\n\x1aorg.finos.tracdap.metadataP\x01\x62\x06proto3')
|
19
19
|
|
20
20
|
_globals = globals()
|
21
21
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
@@ -23,8 +23,8 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'tracdap.rt._impl.grpc.tracd
|
|
23
23
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
24
24
|
_globals['DESCRIPTOR']._options = None
|
25
25
|
_globals['DESCRIPTOR']._serialized_options = b'\n\032org.finos.tracdap.metadataP\001'
|
26
|
-
_globals['_OBJECTTYPE']._serialized_start=
|
27
|
-
_globals['_OBJECTTYPE']._serialized_end=
|
26
|
+
_globals['_OBJECTTYPE']._serialized_start=727
|
27
|
+
_globals['_OBJECTTYPE']._serialized_end=889
|
28
28
|
_globals['_TAGHEADER']._serialized_start=128
|
29
29
|
_globals['_TAGHEADER']._serialized_end=408
|
30
30
|
_globals['_TAGSELECTOR']._serialized_start=411
|
@@ -17,6 +17,9 @@ class ObjectType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
17
17
|
CUSTOM: _ClassVar[ObjectType]
|
18
18
|
STORAGE: _ClassVar[ObjectType]
|
19
19
|
SCHEMA: _ClassVar[ObjectType]
|
20
|
+
RESULT: _ClassVar[ObjectType]
|
21
|
+
CONFIG: _ClassVar[ObjectType]
|
22
|
+
RESOURCE: _ClassVar[ObjectType]
|
20
23
|
OBJECT_TYPE_NOT_SET: ObjectType
|
21
24
|
DATA: ObjectType
|
22
25
|
MODEL: ObjectType
|
@@ -26,6 +29,9 @@ FILE: ObjectType
|
|
26
29
|
CUSTOM: ObjectType
|
27
30
|
STORAGE: ObjectType
|
28
31
|
SCHEMA: ObjectType
|
32
|
+
RESULT: ObjectType
|
33
|
+
CONFIG: ObjectType
|
34
|
+
RESOURCE: ObjectType
|
29
35
|
|
30
36
|
class TagHeader(_message.Message):
|
31
37
|
__slots__ = ("objectType", "objectId", "objectVersion", "objectTimestamp", "tagVersion", "tagTimestamp", "isLatestObject", "isLatestTag")
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/rt/_impl/grpc/tracdap/metadata/object.proto
|
4
|
-
# Protobuf Python Version: 4.25.
|
4
|
+
# Protobuf Python Version: 4.25.5
|
5
5
|
"""Generated protocol buffer code."""
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
@@ -20,10 +20,12 @@ from tracdap.rt._impl.grpc.tracdap.metadata import flow_pb2 as tracdap_dot_rt_do
|
|
20
20
|
from tracdap.rt._impl.grpc.tracdap.metadata import job_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_job__pb2
|
21
21
|
from tracdap.rt._impl.grpc.tracdap.metadata import file_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_file__pb2
|
22
22
|
from tracdap.rt._impl.grpc.tracdap.metadata import custom_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_custom__pb2
|
23
|
-
from tracdap.rt._impl.grpc.tracdap.metadata import
|
23
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import storage_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_storage__pb2
|
24
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import config_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_config__pb2
|
25
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import resource_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_resource__pb2
|
24
26
|
|
25
27
|
|
26
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n3tracdap/rt/_impl/grpc/tracdap/metadata/object.proto\x12\x10tracdap.metadata\x1a\x36tracdap/rt/_impl/grpc/tracdap/metadata/object_id.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/type.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/data.proto\x1a\x32tracdap/rt/_impl/grpc/tracdap/metadata/model.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/flow.proto\x1a\x30tracdap/rt/_impl/grpc/tracdap/metadata/job.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/file.proto\x1a\x33tracdap/rt/_impl/grpc/tracdap/metadata/custom.proto\x1a\x34tracdap/rt/_impl/grpc/tracdap/metadata/
|
28
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n3tracdap/rt/_impl/grpc/tracdap/metadata/object.proto\x12\x10tracdap.metadata\x1a\x36tracdap/rt/_impl/grpc/tracdap/metadata/object_id.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/type.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/data.proto\x1a\x32tracdap/rt/_impl/grpc/tracdap/metadata/model.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/flow.proto\x1a\x30tracdap/rt/_impl/grpc/tracdap/metadata/job.proto\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/file.proto\x1a\x33tracdap/rt/_impl/grpc/tracdap/metadata/custom.proto\x1a\x34tracdap/rt/_impl/grpc/tracdap/metadata/storage.proto\x1a\x33tracdap/rt/_impl/grpc/tracdap/metadata/config.proto\x1a\x35tracdap/rt/_impl/grpc/tracdap/metadata/resource.proto\"\xad\x06\n\x10ObjectDefinition\x12\x30\n\nobjectType\x18\x01 \x01(\x0e\x32\x1c.tracdap.metadata.ObjectType\x12\x30\n\x04\x64\x61ta\x18\x02 \x01(\x0b\x32 .tracdap.metadata.DataDefinitionH\x00\x12\x32\n\x05model\x18\x03 \x01(\x0b\x32!.tracdap.metadata.ModelDefinitionH\x00\x12\x30\n\x04\x66low\x18\x04 \x01(\x0b\x32 .tracdap.metadata.FlowDefinitionH\x00\x12.\n\x03job\x18\x05 \x01(\x0b\x32\x1f.tracdap.metadata.JobDefinitionH\x00\x12\x30\n\x04\x66ile\x18\x06 \x01(\x0b\x32 .tracdap.metadata.FileDefinitionH\x00\x12\x34\n\x06\x63ustom\x18\x07 \x01(\x0b\x32\".tracdap.metadata.CustomDefinitionH\x00\x12\x36\n\x07storage\x18\x08 \x01(\x0b\x32#.tracdap.metadata.StorageDefinitionH\x00\x12\x34\n\x06schema\x18\t \x01(\x0b\x32\".tracdap.metadata.SchemaDefinitionH\x00\x12\x34\n\x06result\x18\n \x01(\x0b\x32\".tracdap.metadata.ResultDefinitionH\x00\x12\x34\n\x06\x63onfig\x18\x0b \x01(\x0b\x32\".tracdap.metadata.ConfigDefinitionH\x00\x12\x38\n\x08resource\x18\x0c \x01(\x0b\x32$.tracdap.metadata.ResourceDefinitionH\x00\x12H\n\x0bobjectProps\x18\x64 \x03(\x0b\x32\x33.tracdap.metadata.ObjectDefinition.ObjectPropsEntry\x1aK\n\x10ObjectPropsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.tracdap.metadata.Value:\x02\x38\x01\x42\x0c\n\ndefinitionB2\n\x1aorg.finos.tracdap.metadataB\x12ObjectProtoWrapperP\x01\x62\x06proto3')
|
27
29
|
|
28
30
|
_globals = globals()
|
29
31
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
@@ -33,8 +35,8 @@ if _descriptor._USE_C_DESCRIPTORS == False:
|
|
33
35
|
_globals['DESCRIPTOR']._serialized_options = b'\n\032org.finos.tracdap.metadataB\022ObjectProtoWrapperP\001'
|
34
36
|
_globals['_OBJECTDEFINITION_OBJECTPROPSENTRY']._options = None
|
35
37
|
_globals['_OBJECTDEFINITION_OBJECTPROPSENTRY']._serialized_options = b'8\001'
|
36
|
-
_globals['_OBJECTDEFINITION']._serialized_start=
|
37
|
-
_globals['_OBJECTDEFINITION']._serialized_end=
|
38
|
-
_globals['_OBJECTDEFINITION_OBJECTPROPSENTRY']._serialized_start=
|
39
|
-
_globals['_OBJECTDEFINITION_OBJECTPROPSENTRY']._serialized_end=
|
38
|
+
_globals['_OBJECTDEFINITION']._serialized_start=651
|
39
|
+
_globals['_OBJECTDEFINITION']._serialized_end=1464
|
40
|
+
_globals['_OBJECTDEFINITION_OBJECTPROPSENTRY']._serialized_start=1375
|
41
|
+
_globals['_OBJECTDEFINITION_OBJECTPROPSENTRY']._serialized_end=1450
|
40
42
|
# @@protoc_insertion_point(module_scope)
|
@@ -6,7 +6,9 @@ from tracdap.rt._impl.grpc.tracdap.metadata import flow_pb2 as _flow_pb2
|
|
6
6
|
from tracdap.rt._impl.grpc.tracdap.metadata import job_pb2 as _job_pb2
|
7
7
|
from tracdap.rt._impl.grpc.tracdap.metadata import file_pb2 as _file_pb2
|
8
8
|
from tracdap.rt._impl.grpc.tracdap.metadata import custom_pb2 as _custom_pb2
|
9
|
-
from tracdap.rt._impl.grpc.tracdap.metadata import
|
9
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import storage_pb2 as _storage_pb2
|
10
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import config_pb2 as _config_pb2
|
11
|
+
from tracdap.rt._impl.grpc.tracdap.metadata import resource_pb2 as _resource_pb2
|
10
12
|
from google.protobuf.internal import containers as _containers
|
11
13
|
from google.protobuf import descriptor as _descriptor
|
12
14
|
from google.protobuf import message as _message
|
@@ -15,7 +17,7 @@ from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Opti
|
|
15
17
|
DESCRIPTOR: _descriptor.FileDescriptor
|
16
18
|
|
17
19
|
class ObjectDefinition(_message.Message):
|
18
|
-
__slots__ = ("objectType", "data", "model", "flow", "job", "file", "custom", "storage", "schema", "objectProps")
|
20
|
+
__slots__ = ("objectType", "data", "model", "flow", "job", "file", "custom", "storage", "schema", "result", "config", "resource", "objectProps")
|
19
21
|
class ObjectPropsEntry(_message.Message):
|
20
22
|
__slots__ = ("key", "value")
|
21
23
|
KEY_FIELD_NUMBER: _ClassVar[int]
|
@@ -32,6 +34,9 @@ class ObjectDefinition(_message.Message):
|
|
32
34
|
CUSTOM_FIELD_NUMBER: _ClassVar[int]
|
33
35
|
STORAGE_FIELD_NUMBER: _ClassVar[int]
|
34
36
|
SCHEMA_FIELD_NUMBER: _ClassVar[int]
|
37
|
+
RESULT_FIELD_NUMBER: _ClassVar[int]
|
38
|
+
CONFIG_FIELD_NUMBER: _ClassVar[int]
|
39
|
+
RESOURCE_FIELD_NUMBER: _ClassVar[int]
|
35
40
|
OBJECTPROPS_FIELD_NUMBER: _ClassVar[int]
|
36
41
|
objectType: _object_id_pb2.ObjectType
|
37
42
|
data: _data_pb2.DataDefinition
|
@@ -40,7 +45,10 @@ class ObjectDefinition(_message.Message):
|
|
40
45
|
job: _job_pb2.JobDefinition
|
41
46
|
file: _file_pb2.FileDefinition
|
42
47
|
custom: _custom_pb2.CustomDefinition
|
43
|
-
storage:
|
48
|
+
storage: _storage_pb2.StorageDefinition
|
44
49
|
schema: _data_pb2.SchemaDefinition
|
50
|
+
result: _job_pb2.ResultDefinition
|
51
|
+
config: _config_pb2.ConfigDefinition
|
52
|
+
resource: _resource_pb2.ResourceDefinition
|
45
53
|
objectProps: _containers.MessageMap[str, _type_pb2.Value]
|
46
|
-
def __init__(self, objectType: _Optional[_Union[_object_id_pb2.ObjectType, str]] = ..., data: _Optional[_Union[_data_pb2.DataDefinition, _Mapping]] = ..., model: _Optional[_Union[_model_pb2.ModelDefinition, _Mapping]] = ..., flow: _Optional[_Union[_flow_pb2.FlowDefinition, _Mapping]] = ..., job: _Optional[_Union[_job_pb2.JobDefinition, _Mapping]] = ..., file: _Optional[_Union[_file_pb2.FileDefinition, _Mapping]] = ..., custom: _Optional[_Union[_custom_pb2.CustomDefinition, _Mapping]] = ..., storage: _Optional[_Union[
|
54
|
+
def __init__(self, objectType: _Optional[_Union[_object_id_pb2.ObjectType, str]] = ..., data: _Optional[_Union[_data_pb2.DataDefinition, _Mapping]] = ..., model: _Optional[_Union[_model_pb2.ModelDefinition, _Mapping]] = ..., flow: _Optional[_Union[_flow_pb2.FlowDefinition, _Mapping]] = ..., job: _Optional[_Union[_job_pb2.JobDefinition, _Mapping]] = ..., file: _Optional[_Union[_file_pb2.FileDefinition, _Mapping]] = ..., custom: _Optional[_Union[_custom_pb2.CustomDefinition, _Mapping]] = ..., storage: _Optional[_Union[_storage_pb2.StorageDefinition, _Mapping]] = ..., schema: _Optional[_Union[_data_pb2.SchemaDefinition, _Mapping]] = ..., result: _Optional[_Union[_job_pb2.ResultDefinition, _Mapping]] = ..., config: _Optional[_Union[_config_pb2.ConfigDefinition, _Mapping]] = ..., resource: _Optional[_Union[_resource_pb2.ResourceDefinition, _Mapping]] = ..., objectProps: _Optional[_Mapping[str, _type_pb2.Value]] = ...) -> None: ...
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/rt/_impl/grpc/tracdap/metadata/resource.proto
|
4
|
-
# Protobuf Python Version: 4.25.
|
4
|
+
# Protobuf Python Version: 4.25.5
|
5
5
|
"""Generated protocol buffer code."""
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
@@ -13,10 +13,9 @@ _sym_db = _symbol_database.Default()
|
|
13
13
|
|
14
14
|
|
15
15
|
from tracdap.rt._impl.grpc.tracdap.metadata import object_id_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_object__id__pb2
|
16
|
-
from tracdap.rt._impl.grpc.tracdap.metadata import object_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_object__pb2
|
17
16
|
|
18
17
|
|
19
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n5tracdap/rt/_impl/grpc/tracdap/metadata/resource.proto\x12\x10tracdap.metadata\x1a\x36tracdap/rt/_impl/grpc/tracdap/metadata/object_id.proto\
|
18
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n5tracdap/rt/_impl/grpc/tracdap/metadata/resource.proto\x12\x10tracdap.metadata\x1a\x36tracdap/rt/_impl/grpc/tracdap/metadata/object_id.proto\"\x86\x04\n\x12ResourceDefinition\x12\x34\n\x0cresourceType\x18\x01 \x01(\x0e\x32\x1e.tracdap.metadata.ResourceType\x12\x10\n\x08protocol\x18\x02 \x01(\t\x12\x18\n\x0bsubProtocol\x18\x03 \x01(\tH\x00\x88\x01\x01\x12T\n\x10publicProperties\x18\x04 \x03(\x0b\x32:.tracdap.metadata.ResourceDefinition.PublicPropertiesEntry\x12H\n\nproperties\x18\x05 \x03(\x0b\x32\x34.tracdap.metadata.ResourceDefinition.PropertiesEntry\x12\x42\n\x07secrets\x18\x06 \x03(\x0b\x32\x31.tracdap.metadata.ResourceDefinition.SecretsEntry\x1a\x37\n\x15PublicPropertiesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a\x31\n\x0fPropertiesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1a.\n\x0cSecretsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0e\n\x0c_subProtocol*k\n\x0cResourceType\x12\x19\n\x15RESOURCE_TYPE_NOT_SET\x10\x00\x12\x14\n\x10MODEL_REPOSITORY\x10\x01\x12\x14\n\x10INTERNAL_STORAGE\x10\x02\x12\x14\n\x10\x45XTERNAL_STORAGE\x10\x03\x42\x1e\n\x1aorg.finos.tracdap.metadataP\x01\x62\x06proto3')
|
20
19
|
|
21
20
|
_globals = globals()
|
22
21
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
@@ -24,6 +23,20 @@ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'tracdap.rt._impl.grpc.tracd
|
|
24
23
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
25
24
|
_globals['DESCRIPTOR']._options = None
|
26
25
|
_globals['DESCRIPTOR']._serialized_options = b'\n\032org.finos.tracdap.metadataP\001'
|
27
|
-
_globals['
|
28
|
-
_globals['
|
26
|
+
_globals['_RESOURCEDEFINITION_PUBLICPROPERTIESENTRY']._options = None
|
27
|
+
_globals['_RESOURCEDEFINITION_PUBLICPROPERTIESENTRY']._serialized_options = b'8\001'
|
28
|
+
_globals['_RESOURCEDEFINITION_PROPERTIESENTRY']._options = None
|
29
|
+
_globals['_RESOURCEDEFINITION_PROPERTIESENTRY']._serialized_options = b'8\001'
|
30
|
+
_globals['_RESOURCEDEFINITION_SECRETSENTRY']._options = None
|
31
|
+
_globals['_RESOURCEDEFINITION_SECRETSENTRY']._serialized_options = b'8\001'
|
32
|
+
_globals['_RESOURCETYPE']._serialized_start=652
|
33
|
+
_globals['_RESOURCETYPE']._serialized_end=759
|
34
|
+
_globals['_RESOURCEDEFINITION']._serialized_start=132
|
35
|
+
_globals['_RESOURCEDEFINITION']._serialized_end=650
|
36
|
+
_globals['_RESOURCEDEFINITION_PUBLICPROPERTIESENTRY']._serialized_start=480
|
37
|
+
_globals['_RESOURCEDEFINITION_PUBLICPROPERTIESENTRY']._serialized_end=535
|
38
|
+
_globals['_RESOURCEDEFINITION_PROPERTIESENTRY']._serialized_start=537
|
39
|
+
_globals['_RESOURCEDEFINITION_PROPERTIESENTRY']._serialized_end=586
|
40
|
+
_globals['_RESOURCEDEFINITION_SECRETSENTRY']._serialized_start=588
|
41
|
+
_globals['_RESOURCEDEFINITION_SECRETSENTRY']._serialized_end=634
|
29
42
|
# @@protoc_insertion_point(module_scope)
|
@@ -1,8 +1,9 @@
|
|
1
1
|
from tracdap.rt._impl.grpc.tracdap.metadata import object_id_pb2 as _object_id_pb2
|
2
|
-
from
|
2
|
+
from google.protobuf.internal import containers as _containers
|
3
3
|
from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
|
4
4
|
from google.protobuf import descriptor as _descriptor
|
5
|
-
from
|
5
|
+
from google.protobuf import message as _message
|
6
|
+
from typing import ClassVar as _ClassVar, Mapping as _Mapping, Optional as _Optional, Union as _Union
|
6
7
|
|
7
8
|
DESCRIPTOR: _descriptor.FileDescriptor
|
8
9
|
|
@@ -11,6 +12,45 @@ class ResourceType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper):
|
|
11
12
|
RESOURCE_TYPE_NOT_SET: _ClassVar[ResourceType]
|
12
13
|
MODEL_REPOSITORY: _ClassVar[ResourceType]
|
13
14
|
INTERNAL_STORAGE: _ClassVar[ResourceType]
|
15
|
+
EXTERNAL_STORAGE: _ClassVar[ResourceType]
|
14
16
|
RESOURCE_TYPE_NOT_SET: ResourceType
|
15
17
|
MODEL_REPOSITORY: ResourceType
|
16
18
|
INTERNAL_STORAGE: ResourceType
|
19
|
+
EXTERNAL_STORAGE: ResourceType
|
20
|
+
|
21
|
+
class ResourceDefinition(_message.Message):
|
22
|
+
__slots__ = ("resourceType", "protocol", "subProtocol", "publicProperties", "properties", "secrets")
|
23
|
+
class PublicPropertiesEntry(_message.Message):
|
24
|
+
__slots__ = ("key", "value")
|
25
|
+
KEY_FIELD_NUMBER: _ClassVar[int]
|
26
|
+
VALUE_FIELD_NUMBER: _ClassVar[int]
|
27
|
+
key: str
|
28
|
+
value: str
|
29
|
+
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
|
30
|
+
class PropertiesEntry(_message.Message):
|
31
|
+
__slots__ = ("key", "value")
|
32
|
+
KEY_FIELD_NUMBER: _ClassVar[int]
|
33
|
+
VALUE_FIELD_NUMBER: _ClassVar[int]
|
34
|
+
key: str
|
35
|
+
value: str
|
36
|
+
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
|
37
|
+
class SecretsEntry(_message.Message):
|
38
|
+
__slots__ = ("key", "value")
|
39
|
+
KEY_FIELD_NUMBER: _ClassVar[int]
|
40
|
+
VALUE_FIELD_NUMBER: _ClassVar[int]
|
41
|
+
key: str
|
42
|
+
value: str
|
43
|
+
def __init__(self, key: _Optional[str] = ..., value: _Optional[str] = ...) -> None: ...
|
44
|
+
RESOURCETYPE_FIELD_NUMBER: _ClassVar[int]
|
45
|
+
PROTOCOL_FIELD_NUMBER: _ClassVar[int]
|
46
|
+
SUBPROTOCOL_FIELD_NUMBER: _ClassVar[int]
|
47
|
+
PUBLICPROPERTIES_FIELD_NUMBER: _ClassVar[int]
|
48
|
+
PROPERTIES_FIELD_NUMBER: _ClassVar[int]
|
49
|
+
SECRETS_FIELD_NUMBER: _ClassVar[int]
|
50
|
+
resourceType: ResourceType
|
51
|
+
protocol: str
|
52
|
+
subProtocol: str
|
53
|
+
publicProperties: _containers.ScalarMap[str, str]
|
54
|
+
properties: _containers.ScalarMap[str, str]
|
55
|
+
secrets: _containers.ScalarMap[str, str]
|
56
|
+
def __init__(self, resourceType: _Optional[_Union[ResourceType, str]] = ..., protocol: _Optional[str] = ..., subProtocol: _Optional[str] = ..., publicProperties: _Optional[_Mapping[str, str]] = ..., properties: _Optional[_Mapping[str, str]] = ..., secrets: _Optional[_Mapping[str, str]] = ...) -> None: ...
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/rt/_impl/grpc/tracdap/metadata/search.proto
|
4
|
-
# Protobuf Python Version: 4.25.
|
4
|
+
# Protobuf Python Version: 4.25.5
|
5
5
|
"""Generated protocol buffer code."""
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
|
-
# source: tracdap/rt/_impl/grpc/tracdap/metadata/
|
4
|
-
# Protobuf Python Version: 4.25.
|
3
|
+
# source: tracdap/rt/_impl/grpc/tracdap/metadata/storage.proto
|
4
|
+
# Protobuf Python Version: 4.25.5
|
5
5
|
"""Generated protocol buffer code."""
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
@@ -15,11 +15,11 @@ _sym_db = _symbol_database.Default()
|
|
15
15
|
from tracdap.rt._impl.grpc.tracdap.metadata import type_pb2 as tracdap_dot_rt_dot___impl_dot_grpc_dot_tracdap_dot_metadata_dot_type__pb2
|
16
16
|
|
17
17
|
|
18
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n4tracdap/rt/_impl/grpc/tracdap/metadata/
|
18
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n4tracdap/rt/_impl/grpc/tracdap/metadata/storage.proto\x12\x10tracdap.metadata\x1a\x31tracdap/rt/_impl/grpc/tracdap/metadata/type.proto\"\xd2\x02\n\x0bStorageCopy\x12\x12\n\nstorageKey\x18\x01 \x01(\t\x12\x13\n\x0bstoragePath\x18\x02 \x01(\t\x12\x15\n\rstorageFormat\x18\x03 \x01(\t\x12\x30\n\ncopyStatus\x18\x04 \x01(\x0e\x32\x1c.tracdap.metadata.CopyStatus\x12\x36\n\rcopyTimestamp\x18\x05 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValue\x12I\n\x0estorageOptions\x18\x06 \x03(\x0b\x32\x31.tracdap.metadata.StorageCopy.StorageOptionsEntry\x1aN\n\x13StorageOptionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.tracdap.metadata.Value:\x02\x38\x01\"\xdc\x01\n\x12StorageIncarnation\x12-\n\x06\x63opies\x18\x01 \x03(\x0b\x32\x1d.tracdap.metadata.StorageCopy\x12\x18\n\x10incarnationIndex\x18\x02 \x01(\x05\x12=\n\x14incarnationTimestamp\x18\x03 \x01(\x0b\x32\x1f.tracdap.metadata.DatetimeValue\x12>\n\x11incarnationStatus\x18\x04 \x01(\x0e\x32#.tracdap.metadata.IncarnationStatus\"I\n\x0bStorageItem\x12:\n\x0cincarnations\x18\x01 \x03(\x0b\x32$.tracdap.metadata.StorageIncarnation\"\xe1\x02\n\x11StorageDefinition\x12\x45\n\tdataItems\x18\x01 \x03(\x0b\x32\x32.tracdap.metadata.StorageDefinition.DataItemsEntry\x12O\n\x0estorageOptions\x18\x03 \x03(\x0b\x32\x37.tracdap.metadata.StorageDefinition.StorageOptionsEntry\x1aO\n\x0e\x44\x61taItemsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12,\n\x05value\x18\x02 \x01(\x0b\x32\x1d.tracdap.metadata.StorageItem:\x02\x38\x01\x1aN\n\x13StorageOptionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.tracdap.metadata.Value:\x02\x38\x01J\x04\x08\x02\x10\x03R\rstorageFormat*L\n\nCopyStatus\x12\x17\n\x13\x43OPY_STATUS_NOT_SET\x10\x00\x12\x12\n\x0e\x43OPY_AVAILABLE\x10\x01\x12\x11\n\rCOPY_EXPUNGED\x10\x02*h\n\x11IncarnationStatus\x12\x1e\n\x1aINCARNATION_STATUS_NOT_SET\x10\x00\x12\x19\n\x15INCARNATION_AVAILABLE\x10\x01\x12\x18\n\x14INCARNATION_EXPUNGED\x10\x02\x42\x1e\n\x1aorg.finos.tracdap.metadataP\x01\x62\x06proto3')
|
19
19
|
|
20
20
|
_globals = globals()
|
21
21
|
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
22
|
-
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'tracdap.rt._impl.grpc.tracdap.metadata.
|
22
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'tracdap.rt._impl.grpc.tracdap.metadata.storage_pb2', _globals)
|
23
23
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
24
24
|
_globals['DESCRIPTOR']._options = None
|
25
25
|
_globals['DESCRIPTOR']._serialized_options = b'\n\032org.finos.tracdap.metadataP\001'
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/rt/_impl/grpc/tracdap/metadata/tag.proto
|
4
|
-
# Protobuf Python Version: 4.25.
|
4
|
+
# Protobuf Python Version: 4.25.5
|
5
5
|
"""Generated protocol buffer code."""
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/rt/_impl/grpc/tracdap/metadata/tag_update.proto
|
4
|
-
# Protobuf Python Version: 4.25.
|
4
|
+
# Protobuf Python Version: 4.25.5
|
5
5
|
"""Generated protocol buffer code."""
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
@@ -1,7 +1,7 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/rt/_impl/grpc/tracdap/metadata/type.proto
|
4
|
-
# Protobuf Python Version: 4.25.
|
4
|
+
# Protobuf Python Version: 4.25.5
|
5
5
|
"""Generated protocol buffer code."""
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
@@ -29,15 +29,16 @@ import tracdap.rt.api as _api
|
|
29
29
|
import tracdap.rt.config as _cfg
|
30
30
|
import tracdap.rt.exceptions as _ex
|
31
31
|
import tracdap.rt.ext.plugins as _plugins
|
32
|
-
import tracdap.rt.
|
33
|
-
import tracdap.rt.
|
34
|
-
import tracdap.rt.
|
35
|
-
import tracdap.rt._impl.
|
36
|
-
import tracdap.rt._impl.
|
37
|
-
import tracdap.rt._impl.
|
38
|
-
import tracdap.rt._impl.
|
39
|
-
import tracdap.rt._impl.
|
40
|
-
import tracdap.rt._impl.
|
32
|
+
import tracdap.rt._impl.core.config_parser as _cparse
|
33
|
+
import tracdap.rt._impl.core.guard_rails as _guard
|
34
|
+
import tracdap.rt._impl.core.logging as _logging
|
35
|
+
import tracdap.rt._impl.core.models as _models
|
36
|
+
import tracdap.rt._impl.core.storage as _storage
|
37
|
+
import tracdap.rt._impl.core.util as _util
|
38
|
+
import tracdap.rt._impl.exec.actors as _actors
|
39
|
+
import tracdap.rt._impl.exec.engine as _engine
|
40
|
+
import tracdap.rt._impl.exec.dev_mode as _dev_mode
|
41
|
+
import tracdap.rt._impl.static_api as _static_api
|
41
42
|
import tracdap.rt._version as _version
|
42
43
|
|
43
44
|
|
@@ -83,8 +84,8 @@ class TracRuntime:
|
|
83
84
|
if isinstance(scratch_dir, str):
|
84
85
|
scratch_dir = pathlib.Path(scratch_dir)
|
85
86
|
|
86
|
-
|
87
|
-
self._log =
|
87
|
+
_logging.configure_logging()
|
88
|
+
self._log = _logging.logger_for_object(self)
|
88
89
|
self._log.info(f"TRAC D.A.P. Python Runtime {trac_version}")
|
89
90
|
|
90
91
|
self._sys_config = sys_config if isinstance(sys_config, _cfg.RuntimeConfig) else None
|
@@ -96,6 +97,7 @@ class TracRuntime:
|
|
96
97
|
self._scratch_dir_persist = scratch_dir_persist
|
97
98
|
self._plugin_packages = plugin_packages or []
|
98
99
|
self._dev_mode = dev_mode
|
100
|
+
self._dev_mode_translator = None
|
99
101
|
|
100
102
|
# Runtime control
|
101
103
|
self._runtime_lock = threading.Lock()
|
@@ -141,10 +143,6 @@ class TracRuntime:
|
|
141
143
|
|
142
144
|
self._log.info(f"Beginning pre-start sequence...")
|
143
145
|
|
144
|
-
# Scratch dir is needed during pre-start (at least dev mode translation uses the model loader)
|
145
|
-
|
146
|
-
self._prepare_scratch_dir()
|
147
|
-
|
148
146
|
# Plugin manager, static API and guard rails are singletons
|
149
147
|
# Calling these methods multiple times is safe (e.g. for embedded or testing scenarios)
|
150
148
|
# However, plugins are never un-registered for the lifetime of the processes
|
@@ -198,9 +196,17 @@ class TracRuntime:
|
|
198
196
|
|
199
197
|
self._log.info("Starting the engine...")
|
200
198
|
|
199
|
+
self._prepare_scratch_dir()
|
200
|
+
|
201
201
|
self._models = _models.ModelLoader(self._sys_config, self._scratch_dir)
|
202
202
|
self._storage = _storage.StorageManager(self._sys_config)
|
203
203
|
|
204
|
+
if self._dev_mode:
|
205
|
+
|
206
|
+
self._dev_mode_translator = _dev_mode.DevModeTranslator(
|
207
|
+
self._sys_config, self._config_mgr, self._scratch_dir,
|
208
|
+
model_loader=self._models, storage_manager=self._storage)
|
209
|
+
|
204
210
|
# Enable protection after the initial setup of the runtime is complete
|
205
211
|
# Storage plugins in particular are likely to tigger protected imports
|
206
212
|
# Once the runtime is up, no more plugins should be loaded
|
@@ -223,7 +229,7 @@ class TracRuntime:
|
|
223
229
|
self._log.info("Starting the runtime API server...")
|
224
230
|
|
225
231
|
# The server module pulls in all the gRPC dependencies, don't import it unless we have to
|
226
|
-
import tracdap.rt.
|
232
|
+
import tracdap.rt._impl.grpc.server as _server
|
227
233
|
|
228
234
|
self._server = _server.RuntimeApiServer(self._system, self._server_port)
|
229
235
|
self._server.start()
|
@@ -323,6 +329,9 @@ class TracRuntime:
|
|
323
329
|
self, job_config: tp.Union[str, pathlib.Path, _cfg.JobConfig],
|
324
330
|
model_class: tp.Optional[_api.TracModel.__class__] = None):
|
325
331
|
|
332
|
+
if not self._engine or self._shutdown_requested:
|
333
|
+
raise _ex.ETracInternal("Engine is not started or shutdown has been requested")
|
334
|
+
|
326
335
|
if isinstance(job_config, _cfg.JobConfig):
|
327
336
|
self._log.info("Using embedded job config")
|
328
337
|
|
@@ -334,13 +343,15 @@ class TracRuntime:
|
|
334
343
|
config_file_name="job")
|
335
344
|
|
336
345
|
if self._dev_mode:
|
337
|
-
|
338
|
-
job_config = translator.translate_job_config(job_config, model_class)
|
346
|
+
job_config = self._dev_mode_translator.translate_job_config(job_config, model_class)
|
339
347
|
|
340
348
|
return job_config
|
341
349
|
|
342
350
|
def submit_job(self, job_config: _cfg.JobConfig):
|
343
351
|
|
352
|
+
if not self._engine or self._shutdown_requested:
|
353
|
+
raise _ex.ETracInternal("Engine is not started or shutdown has been requested")
|
354
|
+
|
344
355
|
job_key = _util.object_key(job_config.jobId)
|
345
356
|
self._jobs[job_key] = _RuntimeJobInfo()
|
346
357
|
|
@@ -351,6 +362,9 @@ class TracRuntime:
|
|
351
362
|
|
352
363
|
def wait_for_job(self, job_id: _api.TagHeader):
|
353
364
|
|
365
|
+
if not self._engine or self._shutdown_requested:
|
366
|
+
raise _ex.ETracInternal("Engine is not started or shutdown has been requested")
|
367
|
+
|
354
368
|
job_key = _util.object_key(job_id)
|
355
369
|
|
356
370
|
if job_key not in self._jobs:
|