tracdap-runtime 0.6.0rc2__py3-none-any.whl → 0.6.0rc3__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/data.py +53 -16
- tracdap/rt/_version.py +1 -1
- tracdap/rt/config/__init__.py +11 -16
- tracdap/rt/config/common.py +10 -0
- tracdap/rt/config/common_pb2.py +38 -31
- tracdap/rt/config/job_pb2.py +21 -20
- tracdap/rt/config/platform.py +60 -25
- tracdap/rt/config/platform_pb2.py +52 -45
- tracdap/rt/config/result_pb2.py +15 -14
- tracdap/rt/config/runtime.py +0 -1
- tracdap/rt/config/runtime_pb2.py +24 -24
- tracdap/rt/metadata/__init__.py +8 -8
- tracdap/rt/metadata/common_pb2.py +15 -14
- tracdap/rt/metadata/custom_pb2.py +9 -8
- tracdap/rt/metadata/data_pb2.py +31 -30
- tracdap/rt/metadata/file_pb2.py +9 -8
- tracdap/rt/metadata/flow_pb2.py +33 -32
- tracdap/rt/metadata/job_pb2.py +55 -54
- tracdap/rt/metadata/model_pb2.py +31 -30
- tracdap/rt/metadata/object_id_pb2.py +13 -12
- tracdap/rt/metadata/object_pb2.py +9 -8
- tracdap/rt/metadata/search_pb2.py +19 -18
- tracdap/rt/metadata/stoarge_pb2.py +31 -30
- tracdap/rt/metadata/tag_pb2.py +13 -12
- tracdap/rt/metadata/tag_update_pb2.py +11 -10
- tracdap/rt/metadata/type_pb2.py +29 -28
- {tracdap_runtime-0.6.0rc2.dist-info → tracdap_runtime-0.6.0rc3.dist-info}/METADATA +24 -23
- {tracdap_runtime-0.6.0rc2.dist-info → tracdap_runtime-0.6.0rc3.dist-info}/RECORD +31 -33
- {tracdap_runtime-0.6.0rc2.dist-info → tracdap_runtime-0.6.0rc3.dist-info}/WHEEL +1 -1
- tracdap/rt/config/gateway.py +0 -104
- tracdap/rt/config/gateway_pb2.py +0 -45
- {tracdap_runtime-0.6.0rc2.dist-info → tracdap_runtime-0.6.0rc3.dist-info}/LICENSE +0 -0
- {tracdap_runtime-0.6.0rc2.dist-info → tracdap_runtime-0.6.0rc3.dist-info}/top_level.txt +0 -0
tracdap/rt/_impl/data.py
CHANGED
@@ -74,11 +74,7 @@ class DataView:
|
|
74
74
|
|
75
75
|
|
76
76
|
class _DataInternal:
|
77
|
-
|
78
|
-
@staticmethod
|
79
|
-
def float_dtype_check():
|
80
|
-
if "Float64Dtype" not in pd.__dict__:
|
81
|
-
raise _ex.EStartup("TRAC D.A.P. requires Pandas >= 1.2")
|
77
|
+
pass
|
82
78
|
|
83
79
|
|
84
80
|
class DataMapping:
|
@@ -111,8 +107,40 @@ class DataMapping:
|
|
111
107
|
}
|
112
108
|
|
113
109
|
# Check the Pandas dtypes for handling floats are available before setting up the type mapping
|
114
|
-
|
115
|
-
|
110
|
+
__PANDAS_VERSION_ELEMENTS = pd.__version__.split(".")
|
111
|
+
__PANDAS_MAJOR_VERSION = int(__PANDAS_VERSION_ELEMENTS[0])
|
112
|
+
__PANDAS_MINOR_VERSION = int(__PANDAS_VERSION_ELEMENTS[1])
|
113
|
+
|
114
|
+
if __PANDAS_MAJOR_VERSION == 2:
|
115
|
+
|
116
|
+
__PANDAS_DATE_TYPE = pd.to_datetime([dt.date(2000, 1, 1)]).as_unit(__TRAC_TIMESTAMP_UNIT).dtype
|
117
|
+
__PANDAS_DATETIME_TYPE = pd.to_datetime([dt.datetime(2000, 1, 1, 0, 0, 0)]).as_unit(__TRAC_TIMESTAMP_UNIT).dtype
|
118
|
+
|
119
|
+
@classmethod
|
120
|
+
def __pandas_datetime_type(cls, tz, unit):
|
121
|
+
if tz is None and unit is None:
|
122
|
+
return cls.__PANDAS_DATETIME_TYPE
|
123
|
+
_unit = unit if unit is not None else cls.__TRAC_TIMESTAMP_UNIT
|
124
|
+
if tz is None:
|
125
|
+
return pd.to_datetime([dt.datetime(2000, 1, 1, 0, 0, 0)]).as_unit(_unit).dtype
|
126
|
+
else:
|
127
|
+
return pd.DatetimeTZDtype(tz=tz, unit=_unit)
|
128
|
+
|
129
|
+
# Minimum supported version for Pandas is 1.2, when pd.Float64Dtype was introduced
|
130
|
+
elif __PANDAS_MAJOR_VERSION == 1 and __PANDAS_MINOR_VERSION >= 2:
|
131
|
+
|
132
|
+
__PANDAS_DATE_TYPE = pd.to_datetime([dt.date(2000, 1, 1)]).dtype
|
133
|
+
__PANDAS_DATETIME_TYPE = pd.to_datetime([dt.datetime(2000, 1, 1, 0, 0, 0)]).dtype
|
134
|
+
|
135
|
+
@classmethod
|
136
|
+
def __pandas_datetime_type(cls, tz, unit): # noqa
|
137
|
+
if tz is None:
|
138
|
+
return cls.__PANDAS_DATETIME_TYPE
|
139
|
+
else:
|
140
|
+
return pd.DatetimeTZDtype(tz=tz)
|
141
|
+
|
142
|
+
else:
|
143
|
+
raise _ex.EStartup(f"Pandas version not supported: [{pd.__version__}]")
|
116
144
|
|
117
145
|
# Only partial mapping is possible, decimal and temporal dtypes cannot be mapped this way
|
118
146
|
__ARROW_TO_PANDAS_TYPE_MAPPING = {
|
@@ -224,8 +252,12 @@ class DataMapping:
|
|
224
252
|
cls.__TRAC_DECIMAL_SCALE)
|
225
253
|
|
226
254
|
@classmethod
|
227
|
-
def
|
228
|
-
return cls.
|
255
|
+
def pandas_date_type(cls):
|
256
|
+
return cls.__PANDAS_DATE_TYPE
|
257
|
+
|
258
|
+
@classmethod
|
259
|
+
def pandas_datetime_type(cls, tz=None, unit=None):
|
260
|
+
return cls.__pandas_datetime_type(tz, unit)
|
229
261
|
|
230
262
|
@classmethod
|
231
263
|
def view_to_pandas(
|
@@ -297,6 +329,7 @@ class DataMapping:
|
|
297
329
|
else:
|
298
330
|
DataConformance.check_duplicate_fields(table.schema.names, False)
|
299
331
|
|
332
|
+
# Use Arrow's built-in function to convert to Pandas
|
300
333
|
return table.to_pandas(
|
301
334
|
|
302
335
|
# Mapping for arrow -> pandas types for core types
|
@@ -463,7 +496,7 @@ class DataConformance:
|
|
463
496
|
|
464
497
|
table_column: pa.Array = table.column(table_index)
|
465
498
|
|
466
|
-
pandas_type = pandas_types[table_index] \
|
499
|
+
pandas_type = pandas_types.iloc[table_index] \
|
467
500
|
if pandas_types is not None \
|
468
501
|
else None
|
469
502
|
|
@@ -691,16 +724,20 @@ class DataConformance:
|
|
691
724
|
@classmethod
|
692
725
|
def _coerce_date(cls, vector: pa.Array, field: pa.Field, pandas_type=None) -> pa.Array:
|
693
726
|
|
694
|
-
#
|
727
|
+
# The bit-width restriction could be removed here
|
728
|
+
# For date types there is never loss of precision and pa.cast will raise an error on overflow
|
729
|
+
# Impact to client code is unlikely, still this change should happen with a TRAC minor version update
|
695
730
|
if pa.types.is_date(vector.type):
|
696
731
|
if field.type.bit_width >= vector.type.bit_width:
|
697
732
|
return pc.cast(vector, field.type)
|
698
733
|
|
699
|
-
# Special handling for Pandas/NumPy
|
700
|
-
#
|
701
|
-
#
|
702
|
-
|
703
|
-
|
734
|
+
# Special handling for date values coming from Pandas/NumPy
|
735
|
+
# Only allow these conversions if the vector is supplied with Pandas type info
|
736
|
+
# For Pandas 1.x, dates are always encoded as np.datetime64[ns]
|
737
|
+
# For Pandas 2.x dates are still np.datetime64 but can be in s, ms, us or ns
|
738
|
+
# This conversion will not apply to dates held in Pandas using the Python date object types
|
739
|
+
if pandas_type is not None:
|
740
|
+
if pa.types.is_timestamp(vector.type) and pd.api.types.is_datetime64_any_dtype(pandas_type):
|
704
741
|
return pc.cast(vector, field.type)
|
705
742
|
|
706
743
|
error_message = cls._format_error(cls.__E_WRONG_DATA_TYPE, vector, field)
|
tracdap/rt/_version.py
CHANGED
tracdap/rt/config/__init__.py
CHANGED
@@ -4,32 +4,27 @@ from .common import _ConfigFile
|
|
4
4
|
from .common import PluginConfig
|
5
5
|
from .common import PlatformInfo
|
6
6
|
from .common import AuthenticationConfig
|
7
|
+
from .common import StorageConfig
|
7
8
|
|
9
|
+
from .platform import RoutingProtocol
|
10
|
+
from .platform import DeploymentLayout
|
8
11
|
from .platform import PlatformConfig
|
9
12
|
from .platform import MetadataConfig
|
10
|
-
from .platform import StorageConfig
|
11
13
|
from .platform import TenantConfig
|
12
14
|
from .platform import WebServerConfig
|
13
15
|
from .platform import WebServerRewriteRule
|
14
16
|
from .platform import WebServerRedirect
|
15
|
-
from .platform import
|
16
|
-
from .platform import
|
17
|
-
from .platform import
|
17
|
+
from .platform import GatewayConfig
|
18
|
+
from .platform import RouteConfig
|
19
|
+
from .platform import RoutingMatch
|
20
|
+
from .platform import RoutingTarget
|
18
21
|
from .platform import ServiceConfig
|
19
|
-
|
20
|
-
from .runtime import RuntimeConfig
|
21
|
-
from .runtime import SparkSettings
|
22
|
+
from .platform import DeploymentConfig
|
22
23
|
|
23
24
|
from .result import TagUpdateList
|
24
25
|
from .result import JobResult
|
25
26
|
|
26
|
-
from .
|
27
|
+
from .runtime import RuntimeConfig
|
28
|
+
from .runtime import SparkSettings
|
27
29
|
|
28
|
-
from .
|
29
|
-
from .gateway import GwRestMapping
|
30
|
-
from .gateway import GatewayConfig
|
31
|
-
from .gateway import GwRoute
|
32
|
-
from .gateway import GwMatch
|
33
|
-
from .gateway import GwTarget
|
34
|
-
from .gateway import GwServiceMap
|
35
|
-
from .gateway import GwService
|
30
|
+
from .job import JobConfig
|
tracdap/rt/config/common.py
CHANGED
@@ -56,3 +56,13 @@ class AuthenticationConfig:
|
|
56
56
|
systemTicketDuration: int = None
|
57
57
|
|
58
58
|
systemTicketRefresh: int = None
|
59
|
+
|
60
|
+
|
61
|
+
@_dc.dataclass
|
62
|
+
class StorageConfig:
|
63
|
+
|
64
|
+
buckets: _tp.Dict[str, PluginConfig] = _dc.field(default_factory=dict)
|
65
|
+
|
66
|
+
defaultBucket: str = None
|
67
|
+
|
68
|
+
defaultFormat: str = None
|
tracdap/rt/config/common_pb2.py
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/config/common.proto
|
4
|
+
# Protobuf Python Version: 4.25.3
|
4
5
|
"""Generated protocol buffer code."""
|
5
|
-
from google.protobuf.internal import builder as _builder
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
8
8
|
from google.protobuf import symbol_database as _symbol_database
|
9
|
+
from google.protobuf.internal import builder as _builder
|
9
10
|
# @@protoc_insertion_point(imports)
|
10
11
|
|
11
12
|
_sym_db = _symbol_database.Default()
|
@@ -13,36 +14,42 @@ _sym_db = _symbol_database.Default()
|
|
13
14
|
|
14
15
|
|
15
16
|
|
16
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1btracdap/config/common.proto\x12\x0etracdap.config\"u\n\x0b_ConfigFile\x12\x37\n\x06\x63onfig\x18\x01 \x03(\x0b\x32\'.tracdap.config._ConfigFile.ConfigEntry\x1a-\n\x0b\x43onfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x81\x02\n\x0cPluginConfig\x12\x10\n\x08protocol\x18\x01 \x01(\t\x12@\n\nproperties\x18\x02 \x03(\x0b\x32,.tracdap.config.PluginConfig.PropertiesEntry\x12:\n\x07secrets\x18\x03 \x03(\x0b\x32).tracdap.config.PluginConfig.SecretsEntry\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\"\xb8\x01\n\x0cPlatformInfo\x12\x13\n\x0b\x65nvironment\x18\x01 \x01(\t\x12\x12\n\nproduction\x18\x02 \x01(\x08\x12H\n\x0e\x64\x65ploymentInfo\x18\x03 \x03(\x0b\x32\x30.tracdap.config.PlatformInfo.DeploymentInfoEntry\x1a\x35\n\x13\x44\x65ploymentInfoEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xba\x02\n\x14\x41uthenticationConfig\x12\x11\n\tjwtIssuer\x18\x01 \x01(\t\x12\x11\n\tjwtExpiry\x18\x02 \x01(\x11\x12\x10\n\x08jwtLimit\x18\x06 \x01(\x11\x12\x12\n\njwtRefresh\x18\x07 \x01(\x11\x12\x33\n\x08provider\x18\x03 \x01(\x0b\x32\x1c.tracdap.config.PluginConfigH\x00\x88\x01\x01\x12\x13\n\x0b\x64isableAuth\x18\x04 \x01(\x08\x12\x16\n\x0e\x64isableSigning\x18\x05 \x01(\x08\x12\x14\n\x0csystemUserId\x18\x08 \x01(\t\x12\x16\n\x0esystemUserName\x18\t \x01(\t\x12\x1c\n\x14systemTicketDuration\x18\n \x01(\x11\x12\x1b\n\x13systemTicketRefresh\x18\x0b \x01(\x11\x42\x0b\n\
|
17
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1btracdap/config/common.proto\x12\x0etracdap.config\"u\n\x0b_ConfigFile\x12\x37\n\x06\x63onfig\x18\x01 \x03(\x0b\x32\'.tracdap.config._ConfigFile.ConfigEntry\x1a-\n\x0b\x43onfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\x81\x02\n\x0cPluginConfig\x12\x10\n\x08protocol\x18\x01 \x01(\t\x12@\n\nproperties\x18\x02 \x03(\x0b\x32,.tracdap.config.PluginConfig.PropertiesEntry\x12:\n\x07secrets\x18\x03 \x03(\x0b\x32).tracdap.config.PluginConfig.SecretsEntry\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\"\xb8\x01\n\x0cPlatformInfo\x12\x13\n\x0b\x65nvironment\x18\x01 \x01(\t\x12\x12\n\nproduction\x18\x02 \x01(\x08\x12H\n\x0e\x64\x65ploymentInfo\x18\x03 \x03(\x0b\x32\x30.tracdap.config.PlatformInfo.DeploymentInfoEntry\x1a\x35\n\x13\x44\x65ploymentInfoEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xba\x02\n\x14\x41uthenticationConfig\x12\x11\n\tjwtIssuer\x18\x01 \x01(\t\x12\x11\n\tjwtExpiry\x18\x02 \x01(\x11\x12\x10\n\x08jwtLimit\x18\x06 \x01(\x11\x12\x12\n\njwtRefresh\x18\x07 \x01(\x11\x12\x33\n\x08provider\x18\x03 \x01(\x0b\x32\x1c.tracdap.config.PluginConfigH\x00\x88\x01\x01\x12\x13\n\x0b\x64isableAuth\x18\x04 \x01(\x08\x12\x16\n\x0e\x64isableSigning\x18\x05 \x01(\x08\x12\x14\n\x0csystemUserId\x18\x08 \x01(\t\x12\x16\n\x0esystemUserName\x18\t \x01(\t\x12\x1c\n\x14systemTicketDuration\x18\n \x01(\x11\x12\x1b\n\x13systemTicketRefresh\x18\x0b \x01(\x11\x42\x0b\n\t_provider\"\xc8\x01\n\rStorageConfig\x12;\n\x07\x62uckets\x18\x01 \x03(\x0b\x32*.tracdap.config.StorageConfig.BucketsEntry\x12\x15\n\rdefaultBucket\x18\x02 \x01(\t\x12\x15\n\rdefaultFormat\x18\x03 \x01(\t\x1aL\n\x0c\x42ucketsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12+\n\x05value\x18\x02 \x01(\x0b\x32\x1c.tracdap.config.PluginConfig:\x02\x38\x01\x42\x1c\n\x18org.finos.tracdap.configP\x01\x62\x06proto3')
|
17
18
|
|
18
|
-
|
19
|
-
_builder.
|
19
|
+
_globals = globals()
|
20
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
21
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'tracdap.config.common_pb2', _globals)
|
20
22
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
21
|
-
|
22
|
-
DESCRIPTOR.
|
23
|
-
|
24
|
-
__CONFIGFILE_CONFIGENTRY.
|
25
|
-
|
26
|
-
_PLUGINCONFIG_PROPERTIESENTRY.
|
27
|
-
|
28
|
-
_PLUGINCONFIG_SECRETSENTRY.
|
29
|
-
|
30
|
-
_PLATFORMINFO_DEPLOYMENTINFOENTRY.
|
31
|
-
|
32
|
-
|
33
|
-
__CONFIGFILE.
|
34
|
-
|
35
|
-
__CONFIGFILE_CONFIGENTRY.
|
36
|
-
|
37
|
-
_PLUGINCONFIG.
|
38
|
-
|
39
|
-
_PLUGINCONFIG_PROPERTIESENTRY.
|
40
|
-
|
41
|
-
_PLUGINCONFIG_SECRETSENTRY.
|
42
|
-
|
43
|
-
_PLATFORMINFO.
|
44
|
-
|
45
|
-
_PLATFORMINFO_DEPLOYMENTINFOENTRY.
|
46
|
-
|
47
|
-
_AUTHENTICATIONCONFIG.
|
23
|
+
_globals['DESCRIPTOR']._options = None
|
24
|
+
_globals['DESCRIPTOR']._serialized_options = b'\n\030org.finos.tracdap.configP\001'
|
25
|
+
_globals['__CONFIGFILE_CONFIGENTRY']._options = None
|
26
|
+
_globals['__CONFIGFILE_CONFIGENTRY']._serialized_options = b'8\001'
|
27
|
+
_globals['_PLUGINCONFIG_PROPERTIESENTRY']._options = None
|
28
|
+
_globals['_PLUGINCONFIG_PROPERTIESENTRY']._serialized_options = b'8\001'
|
29
|
+
_globals['_PLUGINCONFIG_SECRETSENTRY']._options = None
|
30
|
+
_globals['_PLUGINCONFIG_SECRETSENTRY']._serialized_options = b'8\001'
|
31
|
+
_globals['_PLATFORMINFO_DEPLOYMENTINFOENTRY']._options = None
|
32
|
+
_globals['_PLATFORMINFO_DEPLOYMENTINFOENTRY']._serialized_options = b'8\001'
|
33
|
+
_globals['_STORAGECONFIG_BUCKETSENTRY']._options = None
|
34
|
+
_globals['_STORAGECONFIG_BUCKETSENTRY']._serialized_options = b'8\001'
|
35
|
+
_globals['__CONFIGFILE']._serialized_start=47
|
36
|
+
_globals['__CONFIGFILE']._serialized_end=164
|
37
|
+
_globals['__CONFIGFILE_CONFIGENTRY']._serialized_start=119
|
38
|
+
_globals['__CONFIGFILE_CONFIGENTRY']._serialized_end=164
|
39
|
+
_globals['_PLUGINCONFIG']._serialized_start=167
|
40
|
+
_globals['_PLUGINCONFIG']._serialized_end=424
|
41
|
+
_globals['_PLUGINCONFIG_PROPERTIESENTRY']._serialized_start=327
|
42
|
+
_globals['_PLUGINCONFIG_PROPERTIESENTRY']._serialized_end=376
|
43
|
+
_globals['_PLUGINCONFIG_SECRETSENTRY']._serialized_start=378
|
44
|
+
_globals['_PLUGINCONFIG_SECRETSENTRY']._serialized_end=424
|
45
|
+
_globals['_PLATFORMINFO']._serialized_start=427
|
46
|
+
_globals['_PLATFORMINFO']._serialized_end=611
|
47
|
+
_globals['_PLATFORMINFO_DEPLOYMENTINFOENTRY']._serialized_start=558
|
48
|
+
_globals['_PLATFORMINFO_DEPLOYMENTINFOENTRY']._serialized_end=611
|
49
|
+
_globals['_AUTHENTICATIONCONFIG']._serialized_start=614
|
50
|
+
_globals['_AUTHENTICATIONCONFIG']._serialized_end=928
|
51
|
+
_globals['_STORAGECONFIG']._serialized_start=931
|
52
|
+
_globals['_STORAGECONFIG']._serialized_end=1131
|
53
|
+
_globals['_STORAGECONFIG_BUCKETSENTRY']._serialized_start=1055
|
54
|
+
_globals['_STORAGECONFIG_BUCKETSENTRY']._serialized_end=1131
|
48
55
|
# @@protoc_insertion_point(module_scope)
|
tracdap/rt/config/job_pb2.py
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/config/job.proto
|
4
|
+
# Protobuf Python Version: 4.25.3
|
4
5
|
"""Generated protocol buffer code."""
|
5
|
-
from google.protobuf.internal import builder as _builder
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
8
8
|
from google.protobuf import symbol_database as _symbol_database
|
9
|
+
from google.protobuf.internal import builder as _builder
|
9
10
|
# @@protoc_insertion_point(imports)
|
10
11
|
|
11
12
|
_sym_db = _symbol_database.Default()
|
@@ -18,24 +19,24 @@ from tracdap.metadata import job_pb2 as tracdap_dot_metadata_dot_job__pb2
|
|
18
19
|
|
19
20
|
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18tracdap/config/job.proto\x12\x0etracdap.config\x1a tracdap/metadata/object_id.proto\x1a\x1dtracdap/metadata/object.proto\x1a\x1atracdap/metadata/job.proto\"\xae\x04\n\tJobConfig\x12*\n\x05jobId\x18\x01 \x01(\x0b\x32\x1b.tracdap.metadata.TagHeader\x12,\n\x03job\x18\x02 \x01(\x0b\x32\x1f.tracdap.metadata.JobDefinition\x12;\n\tresources\x18\x03 \x03(\x0b\x32(.tracdap.config.JobConfig.ResourcesEntry\x12G\n\x0fresourceMapping\x18\x04 \x03(\x0b\x32..tracdap.config.JobConfig.ResourceMappingEntry\x12\x43\n\rresultMapping\x18\x05 \x03(\x0b\x32,.tracdap.config.JobConfig.ResultMappingEntry\x1aT\n\x0eResourcesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x31\n\x05value\x18\x02 \x01(\x0b\x32\".tracdap.metadata.ObjectDefinition:\x02\x38\x01\x1aS\n\x14ResourceMappingEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12*\n\x05value\x18\x02 \x01(\x0b\x32\x1b.tracdap.metadata.TagHeader:\x02\x38\x01\x1aQ\n\x12ResultMappingEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12*\n\x05value\x18\x02 \x01(\x0b\x32\x1b.tracdap.metadata.TagHeader:\x02\x38\x01\x42\x1c\n\x18org.finos.tracdap.configP\x01\x62\x06proto3')
|
20
21
|
|
21
|
-
|
22
|
-
_builder.
|
22
|
+
_globals = globals()
|
23
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
24
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'tracdap.config.job_pb2', _globals)
|
23
25
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
24
|
-
|
25
|
-
DESCRIPTOR.
|
26
|
-
|
27
|
-
_JOBCONFIG_RESOURCESENTRY.
|
28
|
-
|
29
|
-
_JOBCONFIG_RESOURCEMAPPINGENTRY.
|
30
|
-
|
31
|
-
_JOBCONFIG_RESULTMAPPINGENTRY.
|
32
|
-
|
33
|
-
_JOBCONFIG.
|
34
|
-
|
35
|
-
_JOBCONFIG_RESOURCESENTRY.
|
36
|
-
|
37
|
-
_JOBCONFIG_RESOURCEMAPPINGENTRY.
|
38
|
-
|
39
|
-
_JOBCONFIG_RESULTMAPPINGENTRY.
|
40
|
-
_JOBCONFIG_RESULTMAPPINGENTRY._serialized_end=696
|
26
|
+
_globals['DESCRIPTOR']._options = None
|
27
|
+
_globals['DESCRIPTOR']._serialized_options = b'\n\030org.finos.tracdap.configP\001'
|
28
|
+
_globals['_JOBCONFIG_RESOURCESENTRY']._options = None
|
29
|
+
_globals['_JOBCONFIG_RESOURCESENTRY']._serialized_options = b'8\001'
|
30
|
+
_globals['_JOBCONFIG_RESOURCEMAPPINGENTRY']._options = None
|
31
|
+
_globals['_JOBCONFIG_RESOURCEMAPPINGENTRY']._serialized_options = b'8\001'
|
32
|
+
_globals['_JOBCONFIG_RESULTMAPPINGENTRY']._options = None
|
33
|
+
_globals['_JOBCONFIG_RESULTMAPPINGENTRY']._serialized_options = b'8\001'
|
34
|
+
_globals['_JOBCONFIG']._serialized_start=138
|
35
|
+
_globals['_JOBCONFIG']._serialized_end=696
|
36
|
+
_globals['_JOBCONFIG_RESOURCESENTRY']._serialized_start=444
|
37
|
+
_globals['_JOBCONFIG_RESOURCESENTRY']._serialized_end=528
|
38
|
+
_globals['_JOBCONFIG_RESOURCEMAPPINGENTRY']._serialized_start=530
|
39
|
+
_globals['_JOBCONFIG_RESOURCEMAPPINGENTRY']._serialized_end=613
|
40
|
+
_globals['_JOBCONFIG_RESULTMAPPINGENTRY']._serialized_start=615
|
41
|
+
_globals['_JOBCONFIG_RESULTMAPPINGENTRY']._serialized_end=696
|
41
42
|
# @@protoc_insertion_point(module_scope)
|
tracdap/rt/config/platform.py
CHANGED
@@ -9,6 +9,29 @@ import tracdap.rt.metadata as metadata
|
|
9
9
|
from .common import * # noqa
|
10
10
|
|
11
11
|
|
12
|
+
class RoutingProtocol(_enum.Enum):
|
13
|
+
|
14
|
+
PROTOCOL_NOT_SET = 0,
|
15
|
+
|
16
|
+
HTTP = 1,
|
17
|
+
|
18
|
+
GRPC = 2,
|
19
|
+
|
20
|
+
GRPC_WEB = 3,
|
21
|
+
|
22
|
+
REST = 4,
|
23
|
+
|
24
|
+
|
25
|
+
class DeploymentLayout(_enum.Enum):
|
26
|
+
|
27
|
+
LAYOUT_NOT_SET = 0,
|
28
|
+
|
29
|
+
SANDBOX = 1,
|
30
|
+
|
31
|
+
HOSTED = 2,
|
32
|
+
|
33
|
+
CUSTOM = 3,
|
34
|
+
|
12
35
|
|
13
36
|
@_dc.dataclass
|
14
37
|
class PlatformConfig:
|
@@ -33,9 +56,11 @@ class PlatformConfig:
|
|
33
56
|
|
34
57
|
webServer: _tp.Optional[WebServerConfig] = None
|
35
58
|
|
36
|
-
|
59
|
+
gateway: _tp.Optional[GatewayConfig] = None
|
60
|
+
|
61
|
+
services: _tp.Dict[str, ServiceConfig] = _dc.field(default_factory=dict)
|
37
62
|
|
38
|
-
|
63
|
+
deployment: DeploymentConfig = None
|
39
64
|
|
40
65
|
|
41
66
|
@_dc.dataclass
|
@@ -46,16 +71,6 @@ class MetadataConfig:
|
|
46
71
|
format: metadata.MetadataFormat = metadata.MetadataFormat.METADATA_FORMAT_NOT_SET
|
47
72
|
|
48
73
|
|
49
|
-
@_dc.dataclass
|
50
|
-
class StorageConfig:
|
51
|
-
|
52
|
-
buckets: _tp.Dict[str, PluginConfig] = _dc.field(default_factory=dict)
|
53
|
-
|
54
|
-
defaultBucket: str = None
|
55
|
-
|
56
|
-
defaultFormat: str = None
|
57
|
-
|
58
|
-
|
59
74
|
@_dc.dataclass
|
60
75
|
class TenantConfig:
|
61
76
|
|
@@ -69,8 +84,6 @@ class WebServerConfig:
|
|
69
84
|
|
70
85
|
enabled: bool = None
|
71
86
|
|
72
|
-
port: int = None
|
73
|
-
|
74
87
|
contentRoot: PluginConfig = None
|
75
88
|
|
76
89
|
rewriteRules: _tp.List[WebServerRewriteRule] = _dc.field(default_factory=list)
|
@@ -97,17 +110,37 @@ class WebServerRedirect:
|
|
97
110
|
|
98
111
|
|
99
112
|
@_dc.dataclass
|
100
|
-
class
|
113
|
+
class GatewayConfig:
|
114
|
+
|
115
|
+
idleTimeout: int = None
|
116
|
+
|
117
|
+
routes: _tp.List[RouteConfig] = _dc.field(default_factory=list)
|
118
|
+
|
119
|
+
|
120
|
+
@_dc.dataclass
|
121
|
+
class RouteConfig:
|
122
|
+
|
123
|
+
routeName: str = None
|
124
|
+
|
125
|
+
routeType: RoutingProtocol = RoutingProtocol.PROTOCOL_NOT_SET
|
101
126
|
|
102
|
-
|
127
|
+
protocols: _tp.List[RoutingProtocol] = _dc.field(default_factory=list)
|
103
128
|
|
104
|
-
|
129
|
+
match: RoutingMatch = None
|
105
130
|
|
106
|
-
|
131
|
+
target: RoutingTarget = None
|
107
132
|
|
108
133
|
|
109
134
|
@_dc.dataclass
|
110
|
-
class
|
135
|
+
class RoutingMatch:
|
136
|
+
|
137
|
+
host: str = None
|
138
|
+
|
139
|
+
path: str = None
|
140
|
+
|
141
|
+
|
142
|
+
@_dc.dataclass
|
143
|
+
class RoutingTarget:
|
111
144
|
|
112
145
|
scheme: str = None
|
113
146
|
|
@@ -115,18 +148,20 @@ class InstanceConfig:
|
|
115
148
|
|
116
149
|
port: int = None
|
117
150
|
|
151
|
+
path: str = None
|
152
|
+
|
118
153
|
|
119
154
|
@_dc.dataclass
|
120
|
-
class
|
155
|
+
class ServiceConfig:
|
121
156
|
|
122
|
-
|
157
|
+
enabled: _tp.Optional[bool] = None
|
123
158
|
|
124
|
-
|
159
|
+
alias: str = None
|
125
160
|
|
126
|
-
|
161
|
+
port: int = None
|
127
162
|
|
128
163
|
|
129
164
|
@_dc.dataclass
|
130
|
-
class
|
165
|
+
class DeploymentConfig:
|
131
166
|
|
132
|
-
|
167
|
+
layout: DeploymentLayout = DeploymentLayout.LAYOUT_NOT_SET
|
@@ -1,11 +1,12 @@
|
|
1
1
|
# -*- coding: utf-8 -*-
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
3
3
|
# source: tracdap/config/platform.proto
|
4
|
+
# Protobuf Python Version: 4.25.3
|
4
5
|
"""Generated protocol buffer code."""
|
5
|
-
from google.protobuf.internal import builder as _builder
|
6
6
|
from google.protobuf import descriptor as _descriptor
|
7
7
|
from google.protobuf import descriptor_pool as _descriptor_pool
|
8
8
|
from google.protobuf import symbol_database as _symbol_database
|
9
|
+
from google.protobuf.internal import builder as _builder
|
9
10
|
# @@protoc_insertion_point(imports)
|
10
11
|
|
11
12
|
_sym_db = _symbol_database.Default()
|
@@ -15,50 +16,56 @@ from tracdap.metadata import common_pb2 as tracdap_dot_metadata_dot_common__pb2
|
|
15
16
|
from tracdap.config import common_pb2 as tracdap_dot_config_dot_common__pb2
|
16
17
|
|
17
18
|
|
18
|
-
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1dtracdap/config/platform.proto\x12\x0etracdap.config\x1a\x1dtracdap/metadata/common.proto\x1a\x1btracdap/config/common.proto\"\
|
19
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1dtracdap/config/platform.proto\x12\x0etracdap.config\x1a\x1dtracdap/metadata/common.proto\x1a\x1btracdap/config/common.proto\"\xa4\x08\n\x0ePlatformConfig\x12:\n\x06\x63onfig\x18\x01 \x03(\x0b\x32*.tracdap.config.PlatformConfig.ConfigEntry\x12\x32\n\x0cplatformInfo\x18\x02 \x01(\x0b\x32\x1c.tracdap.config.PlatformInfo\x12<\n\x0e\x61uthentication\x18\x05 \x01(\x0b\x32$.tracdap.config.AuthenticationConfig\x12\x30\n\x08metadata\x18\x06 \x01(\x0b\x32\x1e.tracdap.config.MetadataConfig\x12.\n\x07storage\x18\x07 \x01(\x0b\x32\x1d.tracdap.config.StorageConfig\x12\x46\n\x0crepositories\x18\x08 \x03(\x0b\x32\x30.tracdap.config.PlatformConfig.RepositoriesEntry\x12.\n\x08\x65xecutor\x18\t \x01(\x0b\x32\x1c.tracdap.config.PluginConfig\x12.\n\x08jobCache\x18\x0c \x01(\x0b\x32\x1c.tracdap.config.PluginConfig\x12<\n\x07tenants\x18\n \x03(\x0b\x32+.tracdap.config.PlatformConfig.TenantsEntry\x12\x37\n\twebServer\x18\x0b \x01(\x0b\x32\x1f.tracdap.config.WebServerConfigH\x00\x88\x01\x01\x12\x33\n\x07gateway\x18\r \x01(\x0b\x32\x1d.tracdap.config.GatewayConfigH\x01\x88\x01\x01\x12>\n\x08services\x18\x04 \x03(\x0b\x32,.tracdap.config.PlatformConfig.ServicesEntry\x12\x34\n\ndeployment\x18\x0e \x01(\x0b\x32 .tracdap.config.DeploymentConfig\x1a-\n\x0b\x43onfigEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x1aQ\n\x11RepositoriesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12+\n\x05value\x18\x02 \x01(\x0b\x32\x1c.tracdap.config.PluginConfig:\x02\x38\x01\x1aL\n\x0cTenantsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12+\n\x05value\x18\x02 \x01(\x0b\x32\x1c.tracdap.config.TenantConfig:\x02\x38\x01\x1aN\n\rServicesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12,\n\x05value\x18\x02 \x01(\x0b\x32\x1d.tracdap.config.ServiceConfig:\x02\x38\x01\x42\x0c\n\n_webServerB\n\n\x08_gateway\"r\n\x0eMetadataConfig\x12.\n\x08\x64\x61tabase\x18\x01 \x01(\x0b\x32\x1c.tracdap.config.PluginConfig\x12\x30\n\x06\x66ormat\x18\x02 \x01(\x0e\x32 .tracdap.metadata.MetadataFormat\"j\n\x0cTenantConfig\x12\x1a\n\rdefaultBucket\x18\x01 \x01(\tH\x00\x88\x01\x01\x12\x1a\n\rdefaultFormat\x18\x02 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_defaultBucketB\x10\n\x0e_defaultFormat\"\xc7\x01\n\x0fWebServerConfig\x12\x0f\n\x07\x65nabled\x18\x01 \x01(\x08\x12\x31\n\x0b\x63ontentRoot\x18\x03 \x01(\x0b\x32\x1c.tracdap.config.PluginConfig\x12:\n\x0crewriteRules\x18\x04 \x03(\x0b\x32$.tracdap.config.WebServerRewriteRule\x12\x34\n\tredirects\x18\x05 \x03(\x0b\x32!.tracdap.config.WebServerRedirect\"6\n\x14WebServerRewriteRule\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x0e\n\x06target\x18\x02 \x01(\t\"C\n\x11WebServerRedirect\x12\x0e\n\x06source\x18\x01 \x01(\t\x12\x0e\n\x06target\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\x05\"Q\n\rGatewayConfig\x12\x13\n\x0bidleTimeout\x18\x01 \x01(\r\x12+\n\x06routes\x18\x02 \x03(\x0b\x32\x1b.tracdap.config.RouteConfig\"\xe4\x01\n\x0bRouteConfig\x12\x11\n\trouteName\x18\x01 \x01(\t\x12\x32\n\trouteType\x18\x02 \x01(\x0e\x32\x1f.tracdap.config.RoutingProtocol\x12\x32\n\tprotocols\x18\x03 \x03(\x0e\x32\x1f.tracdap.config.RoutingProtocol\x12+\n\x05match\x18\x05 \x01(\x0b\x32\x1c.tracdap.config.RoutingMatch\x12-\n\x06target\x18\x06 \x01(\x0b\x32\x1d.tracdap.config.RoutingTarget\"*\n\x0cRoutingMatch\x12\x0c\n\x04host\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\t\"I\n\rRoutingTarget\x12\x0e\n\x06scheme\x18\x01 \x01(\t\x12\x0c\n\x04host\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\r\x12\x0c\n\x04path\x18\x04 \x01(\t\"N\n\rServiceConfig\x12\x14\n\x07\x65nabled\x18\x01 \x01(\x08H\x00\x88\x01\x01\x12\r\n\x05\x61lias\x18\x02 \x01(\t\x12\x0c\n\x04port\x18\x03 \x01(\rB\n\n\x08_enabled\"D\n\x10\x44\x65ploymentConfig\x12\x30\n\x06layout\x18\x01 \x01(\x0e\x32 .tracdap.config.DeploymentLayout*S\n\x0fRoutingProtocol\x12\x14\n\x10PROTOCOL_NOT_SET\x10\x00\x12\x08\n\x04HTTP\x10\x01\x12\x08\n\x04GRPC\x10\x02\x12\x0c\n\x08GRPC_WEB\x10\x03\x12\x08\n\x04REST\x10\x04*K\n\x10\x44\x65ploymentLayout\x12\x12\n\x0eLAYOUT_NOT_SET\x10\x00\x12\x0b\n\x07SANDBOX\x10\x01\x12\n\n\x06HOSTED\x10\x02\x12\n\n\x06\x43USTOM\x10\x03\x42\x1c\n\x18org.finos.tracdap.configP\x01\x62\x06proto3')
|
19
20
|
|
20
|
-
|
21
|
-
_builder.
|
21
|
+
_globals = globals()
|
22
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
23
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'tracdap.config.platform_pb2', _globals)
|
22
24
|
if _descriptor._USE_C_DESCRIPTORS == False:
|
23
|
-
|
24
|
-
DESCRIPTOR.
|
25
|
-
|
26
|
-
_PLATFORMCONFIG_CONFIGENTRY.
|
27
|
-
|
28
|
-
_PLATFORMCONFIG_REPOSITORIESENTRY.
|
29
|
-
|
30
|
-
_PLATFORMCONFIG_TENANTSENTRY.
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
_TENANTCONFIG.
|
50
|
-
|
51
|
-
_WEBSERVERCONFIG.
|
52
|
-
|
53
|
-
_WEBSERVERREWRITERULE.
|
54
|
-
|
55
|
-
_WEBSERVERREDIRECT.
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
25
|
+
_globals['DESCRIPTOR']._options = None
|
26
|
+
_globals['DESCRIPTOR']._serialized_options = b'\n\030org.finos.tracdap.configP\001'
|
27
|
+
_globals['_PLATFORMCONFIG_CONFIGENTRY']._options = None
|
28
|
+
_globals['_PLATFORMCONFIG_CONFIGENTRY']._serialized_options = b'8\001'
|
29
|
+
_globals['_PLATFORMCONFIG_REPOSITORIESENTRY']._options = None
|
30
|
+
_globals['_PLATFORMCONFIG_REPOSITORIESENTRY']._serialized_options = b'8\001'
|
31
|
+
_globals['_PLATFORMCONFIG_TENANTSENTRY']._options = None
|
32
|
+
_globals['_PLATFORMCONFIG_TENANTSENTRY']._serialized_options = b'8\001'
|
33
|
+
_globals['_PLATFORMCONFIG_SERVICESENTRY']._options = None
|
34
|
+
_globals['_PLATFORMCONFIG_SERVICESENTRY']._serialized_options = b'8\001'
|
35
|
+
_globals['_ROUTINGPROTOCOL']._serialized_start=2306
|
36
|
+
_globals['_ROUTINGPROTOCOL']._serialized_end=2389
|
37
|
+
_globals['_DEPLOYMENTLAYOUT']._serialized_start=2391
|
38
|
+
_globals['_DEPLOYMENTLAYOUT']._serialized_end=2466
|
39
|
+
_globals['_PLATFORMCONFIG']._serialized_start=110
|
40
|
+
_globals['_PLATFORMCONFIG']._serialized_end=1170
|
41
|
+
_globals['_PLATFORMCONFIG_CONFIGENTRY']._serialized_start=858
|
42
|
+
_globals['_PLATFORMCONFIG_CONFIGENTRY']._serialized_end=903
|
43
|
+
_globals['_PLATFORMCONFIG_REPOSITORIESENTRY']._serialized_start=905
|
44
|
+
_globals['_PLATFORMCONFIG_REPOSITORIESENTRY']._serialized_end=986
|
45
|
+
_globals['_PLATFORMCONFIG_TENANTSENTRY']._serialized_start=988
|
46
|
+
_globals['_PLATFORMCONFIG_TENANTSENTRY']._serialized_end=1064
|
47
|
+
_globals['_PLATFORMCONFIG_SERVICESENTRY']._serialized_start=1066
|
48
|
+
_globals['_PLATFORMCONFIG_SERVICESENTRY']._serialized_end=1144
|
49
|
+
_globals['_METADATACONFIG']._serialized_start=1172
|
50
|
+
_globals['_METADATACONFIG']._serialized_end=1286
|
51
|
+
_globals['_TENANTCONFIG']._serialized_start=1288
|
52
|
+
_globals['_TENANTCONFIG']._serialized_end=1394
|
53
|
+
_globals['_WEBSERVERCONFIG']._serialized_start=1397
|
54
|
+
_globals['_WEBSERVERCONFIG']._serialized_end=1596
|
55
|
+
_globals['_WEBSERVERREWRITERULE']._serialized_start=1598
|
56
|
+
_globals['_WEBSERVERREWRITERULE']._serialized_end=1652
|
57
|
+
_globals['_WEBSERVERREDIRECT']._serialized_start=1654
|
58
|
+
_globals['_WEBSERVERREDIRECT']._serialized_end=1721
|
59
|
+
_globals['_GATEWAYCONFIG']._serialized_start=1723
|
60
|
+
_globals['_GATEWAYCONFIG']._serialized_end=1804
|
61
|
+
_globals['_ROUTECONFIG']._serialized_start=1807
|
62
|
+
_globals['_ROUTECONFIG']._serialized_end=2035
|
63
|
+
_globals['_ROUTINGMATCH']._serialized_start=2037
|
64
|
+
_globals['_ROUTINGMATCH']._serialized_end=2079
|
65
|
+
_globals['_ROUTINGTARGET']._serialized_start=2081
|
66
|
+
_globals['_ROUTINGTARGET']._serialized_end=2154
|
67
|
+
_globals['_SERVICECONFIG']._serialized_start=2156
|
68
|
+
_globals['_SERVICECONFIG']._serialized_end=2234
|
69
|
+
_globals['_DEPLOYMENTCONFIG']._serialized_start=2236
|
70
|
+
_globals['_DEPLOYMENTCONFIG']._serialized_end=2304
|
64
71
|
# @@protoc_insertion_point(module_scope)
|