development-framework-cli 1.7.3__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.
Files changed (71) hide show
  1. development_framework_cli-1.7.3.dist-info/METADATA +141 -0
  2. development_framework_cli-1.7.3.dist-info/RECORD +71 -0
  3. development_framework_cli-1.7.3.dist-info/WHEEL +4 -0
  4. development_framework_cli-1.7.3.dist-info/entry_points.txt +2 -0
  5. development_framework_cli-1.7.3.dist-info/licenses/LICENSE +21 -0
  6. dm_cli/__init__.py +1 -0
  7. dm_cli/cli.py +180 -0
  8. dm_cli/command_group/__init__.py +0 -0
  9. dm_cli/command_group/data_source.py +176 -0
  10. dm_cli/command_group/entities.py +116 -0
  11. dm_cli/dmss.py +104 -0
  12. dm_cli/dmss_api/__init__.py +27 -0
  13. dm_cli/dmss_api/api/__init__.py +3 -0
  14. dm_cli/dmss_api/api/access_control_api.py +349 -0
  15. dm_cli/dmss_api/api/attribute_api.py +175 -0
  16. dm_cli/dmss_api/api/blob_api.py +344 -0
  17. dm_cli/dmss_api/api/blueprint_api.py +326 -0
  18. dm_cli/dmss_api/api/datasource_api.py +448 -0
  19. dm_cli/dmss_api/api/default_api.py +4439 -0
  20. dm_cli/dmss_api/api/document_api.py +922 -0
  21. dm_cli/dmss_api/api/entity_api.py +464 -0
  22. dm_cli/dmss_api/api/export_api.py +313 -0
  23. dm_cli/dmss_api/api/file_api.py +197 -0
  24. dm_cli/dmss_api/api/health_check_api.py +160 -0
  25. dm_cli/dmss_api/api/lookup_table_api.py +323 -0
  26. dm_cli/dmss_api/api/meta_api.py +185 -0
  27. dm_cli/dmss_api/api/personal_access_token_api.py +433 -0
  28. dm_cli/dmss_api/api/reference_api.py +174 -0
  29. dm_cli/dmss_api/api/search_api.py +183 -0
  30. dm_cli/dmss_api/api/whoami_api.py +163 -0
  31. dm_cli/dmss_api/api_client.py +896 -0
  32. dm_cli/dmss_api/apis/__init__.py +32 -0
  33. dm_cli/dmss_api/configuration.py +482 -0
  34. dm_cli/dmss_api/exceptions.py +158 -0
  35. dm_cli/dmss_api/model/__init__.py +5 -0
  36. dm_cli/dmss_api/model/access_control_list.py +287 -0
  37. dm_cli/dmss_api/model/access_level.py +290 -0
  38. dm_cli/dmss_api/model/acl.py +287 -0
  39. dm_cli/dmss_api/model/data_source_information.py +282 -0
  40. dm_cli/dmss_api/model/data_source_request.py +281 -0
  41. dm_cli/dmss_api/model/dependency.py +294 -0
  42. dm_cli/dmss_api/model/entity.py +275 -0
  43. dm_cli/dmss_api/model/error_response.py +278 -0
  44. dm_cli/dmss_api/model/export_meta_response.py +277 -0
  45. dm_cli/dmss_api/model/get_blueprint_response.py +280 -0
  46. dm_cli/dmss_api/model/lookup.py +283 -0
  47. dm_cli/dmss_api/model/pat_data.py +299 -0
  48. dm_cli/dmss_api/model/recipe.py +311 -0
  49. dm_cli/dmss_api/model/recipe_attribute.py +304 -0
  50. dm_cli/dmss_api/model/reference.py +280 -0
  51. dm_cli/dmss_api/model/reference_entity.py +288 -0
  52. dm_cli/dmss_api/model/repository.py +317 -0
  53. dm_cli/dmss_api/model/repository_type.py +290 -0
  54. dm_cli/dmss_api/model/storage_attribute.py +295 -0
  55. dm_cli/dmss_api/model/storage_data_types.py +292 -0
  56. dm_cli/dmss_api/model/storage_recipe.py +293 -0
  57. dm_cli/dmss_api/model_utils.py +2057 -0
  58. dm_cli/dmss_api/models/__init__.py +29 -0
  59. dm_cli/dmss_api/rest.py +358 -0
  60. dm_cli/domain.py +166 -0
  61. dm_cli/enums.py +48 -0
  62. dm_cli/import_entity.py +128 -0
  63. dm_cli/import_package.py +173 -0
  64. dm_cli/package_tree_from_zip.py +120 -0
  65. dm_cli/state.py +12 -0
  66. dm_cli/utils/__init__.py +0 -0
  67. dm_cli/utils/file_structure.py +31 -0
  68. dm_cli/utils/reference.py +129 -0
  69. dm_cli/utils/resolve_local_ids.py +142 -0
  70. dm_cli/utils/utils.py +161 -0
  71. dm_cli/utils/zip.py +70 -0
@@ -0,0 +1,175 @@
1
+ """
2
+ Data Modelling Storage Service
3
+
4
+ API for basic data modelling interaction # noqa: E501
5
+
6
+ The version of the OpenAPI document: 1.3.0
7
+ Generated by: https://openapi-generator.tech
8
+ """
9
+
10
+
11
+ import re # noqa: F401
12
+ import sys # noqa: F401
13
+
14
+ from dm_cli.dmss_api.api_client import ApiClient
15
+ from dm_cli.dmss_api.api_client import Endpoint as _Endpoint
16
+ from dm_cli.dmss_api.model.error_response import ErrorResponse
17
+ from dm_cli.dmss_api.model_utils import ( # noqa: F401
18
+ check_allowed_values,
19
+ check_validations,
20
+ date,
21
+ datetime,
22
+ file_type,
23
+ none_type,
24
+ validate_and_convert_types,
25
+ )
26
+
27
+
28
+ class AttributeApi(object):
29
+ """NOTE: This class is auto generated by OpenAPI Generator
30
+ Ref: https://openapi-generator.tech
31
+
32
+ Do not edit the class manually.
33
+ """
34
+
35
+ def __init__(self, api_client=None):
36
+ if api_client is None:
37
+ api_client = ApiClient()
38
+ self.api_client = api_client
39
+ self.attribute_get_endpoint = _Endpoint(
40
+ settings={
41
+ 'response_type': ({str: (bool, date, datetime, dict, float, int, list, str, none_type)},),
42
+ 'auth': [
43
+ 'APIKeyHeader',
44
+ 'OAuth2AuthorizationCodeBearer'
45
+ ],
46
+ 'endpoint_path': '/api/attribute/{address}',
47
+ 'operation_id': 'attribute_get',
48
+ 'http_method': 'GET',
49
+ 'servers': None,
50
+ },
51
+ params_map={
52
+ 'all': [
53
+ 'address',
54
+ ],
55
+ 'required': [
56
+ 'address',
57
+ ],
58
+ 'nullable': [
59
+ ],
60
+ 'enum': [
61
+ ],
62
+ 'validation': [
63
+ ]
64
+ },
65
+ root_map={
66
+ 'validations': {
67
+ },
68
+ 'allowed_values': {
69
+ },
70
+ 'openapi_types': {
71
+ 'address':
72
+ (str,),
73
+ },
74
+ 'attribute_map': {
75
+ 'address': 'address',
76
+ },
77
+ 'location_map': {
78
+ 'address': 'path',
79
+ },
80
+ 'collection_format_map': {
81
+ }
82
+ },
83
+ headers_map={
84
+ 'accept': [
85
+ 'application/json',
86
+ 'text/plain'
87
+ ],
88
+ 'content_type': [],
89
+ },
90
+ api_client=api_client
91
+ )
92
+
93
+ def attribute_get(
94
+ self,
95
+ address,
96
+ **kwargs
97
+ ):
98
+ """Get Attribute # noqa: E501
99
+
100
+ Fetch the BlueprintAttribute which is the container for the addressed object. This endpoint is used for fetching a BlueprintAttribute in which the addressed entity is contained. Args: - address (str): The address to the entity. - user (User): The authenticated user accessing the endpoint, automatically generated from provided bearer token or Access-Key. Returns: - dict: The blueprint-attribute object. # noqa: E501
101
+ This method makes a synchronous HTTP request by default. To make an
102
+ asynchronous HTTP request, please pass async_req=True
103
+
104
+ >>> thread = api.attribute_get(address, async_req=True)
105
+ >>> result = thread.get()
106
+
107
+ Args:
108
+ address (str):
109
+
110
+ Keyword Args:
111
+ _return_http_data_only (bool): response data without head status
112
+ code and headers. Default is True.
113
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
114
+ will be returned without reading/decoding response data.
115
+ Default is True.
116
+ _request_timeout (int/float/tuple): timeout setting for this request. If
117
+ one number provided, it will be total request timeout. It can also
118
+ be a pair (tuple) of (connection, read) timeouts.
119
+ Default is None.
120
+ _check_input_type (bool): specifies if type checking
121
+ should be done one the data sent to the server.
122
+ Default is True.
123
+ _check_return_type (bool): specifies if type checking
124
+ should be done one the data received from the server.
125
+ Default is True.
126
+ _spec_property_naming (bool): True if the variable names in the input data
127
+ are serialized names, as specified in the OpenAPI document.
128
+ False if the variable names in the input data
129
+ are pythonic names, e.g. snake case (default)
130
+ _content_type (str/None): force body content-type.
131
+ Default is None and content-type will be predicted by allowed
132
+ content-types and body.
133
+ _host_index (int/None): specifies the index of the server
134
+ that we want to use.
135
+ Default is read from the configuration.
136
+ _request_auths (list): set to override the auth_settings for an a single
137
+ request; this effectively ignores the authentication
138
+ in the spec for a single request.
139
+ Default is None
140
+ async_req (bool): execute request asynchronously
141
+
142
+ Returns:
143
+ {str: (bool, date, datetime, dict, float, int, list, str, none_type)}
144
+ If the method is called asynchronously, returns the request
145
+ thread.
146
+ """
147
+ kwargs['async_req'] = kwargs.get(
148
+ 'async_req', False
149
+ )
150
+ kwargs['_return_http_data_only'] = kwargs.get(
151
+ '_return_http_data_only', True
152
+ )
153
+ kwargs['_preload_content'] = kwargs.get(
154
+ '_preload_content', True
155
+ )
156
+ kwargs['_request_timeout'] = kwargs.get(
157
+ '_request_timeout', None
158
+ )
159
+ kwargs['_check_input_type'] = kwargs.get(
160
+ '_check_input_type', True
161
+ )
162
+ kwargs['_check_return_type'] = kwargs.get(
163
+ '_check_return_type', True
164
+ )
165
+ kwargs['_spec_property_naming'] = kwargs.get(
166
+ '_spec_property_naming', False
167
+ )
168
+ kwargs['_content_type'] = kwargs.get(
169
+ '_content_type')
170
+ kwargs['_host_index'] = kwargs.get('_host_index')
171
+ kwargs['_request_auths'] = kwargs.get('_request_auths', None)
172
+ kwargs['address'] = \
173
+ address
174
+ return self.attribute_get_endpoint.call_with_http_info(**kwargs)
175
+
@@ -0,0 +1,344 @@
1
+ """
2
+ Data Modelling Storage Service
3
+
4
+ API for basic data modelling interaction # noqa: E501
5
+
6
+ The version of the OpenAPI document: 1.3.0
7
+ Generated by: https://openapi-generator.tech
8
+ """
9
+
10
+
11
+ import re # noqa: F401
12
+ import sys # noqa: F401
13
+
14
+ from dm_cli.dmss_api.api_client import ApiClient
15
+ from dm_cli.dmss_api.api_client import Endpoint as _Endpoint
16
+ from dm_cli.dmss_api.model.error_response import ErrorResponse
17
+ from dm_cli.dmss_api.model_utils import ( # noqa: F401
18
+ check_allowed_values,
19
+ check_validations,
20
+ date,
21
+ datetime,
22
+ file_type,
23
+ none_type,
24
+ validate_and_convert_types,
25
+ )
26
+
27
+
28
+ class BlobApi(object):
29
+ """NOTE: This class is auto generated by OpenAPI Generator
30
+ Ref: https://openapi-generator.tech
31
+
32
+ Do not edit the class manually.
33
+ """
34
+
35
+ def __init__(self, api_client=None):
36
+ if api_client is None:
37
+ api_client = ApiClient()
38
+ self.api_client = api_client
39
+ self.blob_get_by_id_endpoint = _Endpoint(
40
+ settings={
41
+ 'response_type': (file_type,),
42
+ 'auth': [
43
+ 'APIKeyHeader',
44
+ 'OAuth2AuthorizationCodeBearer'
45
+ ],
46
+ 'endpoint_path': '/api/blobs/{data_source_id}/{blob_id}',
47
+ 'operation_id': 'blob_get_by_id',
48
+ 'http_method': 'GET',
49
+ 'servers': None,
50
+ },
51
+ params_map={
52
+ 'all': [
53
+ 'data_source_id',
54
+ 'blob_id',
55
+ ],
56
+ 'required': [
57
+ 'data_source_id',
58
+ 'blob_id',
59
+ ],
60
+ 'nullable': [
61
+ ],
62
+ 'enum': [
63
+ ],
64
+ 'validation': [
65
+ ]
66
+ },
67
+ root_map={
68
+ 'validations': {
69
+ },
70
+ 'allowed_values': {
71
+ },
72
+ 'openapi_types': {
73
+ 'data_source_id':
74
+ (str,),
75
+ 'blob_id':
76
+ (str,),
77
+ },
78
+ 'attribute_map': {
79
+ 'data_source_id': 'data_source_id',
80
+ 'blob_id': 'blob_id',
81
+ },
82
+ 'location_map': {
83
+ 'data_source_id': 'path',
84
+ 'blob_id': 'path',
85
+ },
86
+ 'collection_format_map': {
87
+ }
88
+ },
89
+ headers_map={
90
+ 'accept': [
91
+ 'application/octet-stream',
92
+ 'application/json',
93
+ 'text/plain'
94
+ ],
95
+ 'content_type': [],
96
+ },
97
+ api_client=api_client
98
+ )
99
+ self.blob_upload_endpoint = _Endpoint(
100
+ settings={
101
+ 'response_type': (str,),
102
+ 'auth': [
103
+ 'APIKeyHeader',
104
+ 'OAuth2AuthorizationCodeBearer'
105
+ ],
106
+ 'endpoint_path': '/api/blobs/{data_source_id}/{blob_id}',
107
+ 'operation_id': 'blob_upload',
108
+ 'http_method': 'PUT',
109
+ 'servers': None,
110
+ },
111
+ params_map={
112
+ 'all': [
113
+ 'data_source_id',
114
+ 'blob_id',
115
+ 'file',
116
+ ],
117
+ 'required': [
118
+ 'data_source_id',
119
+ 'blob_id',
120
+ 'file',
121
+ ],
122
+ 'nullable': [
123
+ ],
124
+ 'enum': [
125
+ ],
126
+ 'validation': [
127
+ ]
128
+ },
129
+ root_map={
130
+ 'validations': {
131
+ },
132
+ 'allowed_values': {
133
+ },
134
+ 'openapi_types': {
135
+ 'data_source_id':
136
+ (str,),
137
+ 'blob_id':
138
+ (str,),
139
+ 'file':
140
+ (file_type,),
141
+ },
142
+ 'attribute_map': {
143
+ 'data_source_id': 'data_source_id',
144
+ 'blob_id': 'blob_id',
145
+ 'file': 'file',
146
+ },
147
+ 'location_map': {
148
+ 'data_source_id': 'path',
149
+ 'blob_id': 'path',
150
+ 'file': 'form',
151
+ },
152
+ 'collection_format_map': {
153
+ }
154
+ },
155
+ headers_map={
156
+ 'accept': [
157
+ 'application/json',
158
+ 'text/plain'
159
+ ],
160
+ 'content_type': [
161
+ 'multipart/form-data'
162
+ ]
163
+ },
164
+ api_client=api_client
165
+ )
166
+
167
+ def blob_get_by_id(
168
+ self,
169
+ data_source_id,
170
+ blob_id,
171
+ **kwargs
172
+ ):
173
+ """Get By Id # noqa: E501
174
+
175
+ Get blob from id. A blob file is a binary object, which can be any kind of data object. Args: - data_source_id (str): The ID of the data source in which to find the blob. - blob_id (str): The ID of the requested blob. - user (User): The authenticated user accessing the endpoint, automatically generated from provided bearer token or Access-Key. Returns: - Filestream: The requested blob. # noqa: E501
176
+ This method makes a synchronous HTTP request by default. To make an
177
+ asynchronous HTTP request, please pass async_req=True
178
+
179
+ >>> thread = api.blob_get_by_id(data_source_id, blob_id, async_req=True)
180
+ >>> result = thread.get()
181
+
182
+ Args:
183
+ data_source_id (str):
184
+ blob_id (str):
185
+
186
+ Keyword Args:
187
+ _return_http_data_only (bool): response data without head status
188
+ code and headers. Default is True.
189
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
190
+ will be returned without reading/decoding response data.
191
+ Default is True.
192
+ _request_timeout (int/float/tuple): timeout setting for this request. If
193
+ one number provided, it will be total request timeout. It can also
194
+ be a pair (tuple) of (connection, read) timeouts.
195
+ Default is None.
196
+ _check_input_type (bool): specifies if type checking
197
+ should be done one the data sent to the server.
198
+ Default is True.
199
+ _check_return_type (bool): specifies if type checking
200
+ should be done one the data received from the server.
201
+ Default is True.
202
+ _spec_property_naming (bool): True if the variable names in the input data
203
+ are serialized names, as specified in the OpenAPI document.
204
+ False if the variable names in the input data
205
+ are pythonic names, e.g. snake case (default)
206
+ _content_type (str/None): force body content-type.
207
+ Default is None and content-type will be predicted by allowed
208
+ content-types and body.
209
+ _host_index (int/None): specifies the index of the server
210
+ that we want to use.
211
+ Default is read from the configuration.
212
+ _request_auths (list): set to override the auth_settings for an a single
213
+ request; this effectively ignores the authentication
214
+ in the spec for a single request.
215
+ Default is None
216
+ async_req (bool): execute request asynchronously
217
+
218
+ Returns:
219
+ file_type
220
+ If the method is called asynchronously, returns the request
221
+ thread.
222
+ """
223
+ kwargs['async_req'] = kwargs.get(
224
+ 'async_req', False
225
+ )
226
+ kwargs['_return_http_data_only'] = kwargs.get(
227
+ '_return_http_data_only', True
228
+ )
229
+ kwargs['_preload_content'] = kwargs.get(
230
+ '_preload_content', True
231
+ )
232
+ kwargs['_request_timeout'] = kwargs.get(
233
+ '_request_timeout', None
234
+ )
235
+ kwargs['_check_input_type'] = kwargs.get(
236
+ '_check_input_type', True
237
+ )
238
+ kwargs['_check_return_type'] = kwargs.get(
239
+ '_check_return_type', True
240
+ )
241
+ kwargs['_spec_property_naming'] = kwargs.get(
242
+ '_spec_property_naming', False
243
+ )
244
+ kwargs['_content_type'] = kwargs.get(
245
+ '_content_type')
246
+ kwargs['_host_index'] = kwargs.get('_host_index')
247
+ kwargs['_request_auths'] = kwargs.get('_request_auths', None)
248
+ kwargs['data_source_id'] = \
249
+ data_source_id
250
+ kwargs['blob_id'] = \
251
+ blob_id
252
+ return self.blob_get_by_id_endpoint.call_with_http_info(**kwargs)
253
+
254
+ def blob_upload(
255
+ self,
256
+ data_source_id,
257
+ blob_id,
258
+ file,
259
+ **kwargs
260
+ ):
261
+ """Upload # noqa: E501
262
+
263
+ Upload a new blob or modify an existings blob. A blob (binary large object) can be anything from video to text file. If you give an ID to a blob that already exists, the old blob will be updated in place. Args: - data_source_id (str): The ID of the data source in which to store the blob. - blob_id (str): The ID that the blob should be stored under. - user (User): The authenticated user accessing the endpoint, automatically generated from provided bearer token or Access-Key. Returns: - str: OK (200) # noqa: E501
264
+ This method makes a synchronous HTTP request by default. To make an
265
+ asynchronous HTTP request, please pass async_req=True
266
+
267
+ >>> thread = api.blob_upload(data_source_id, blob_id, file, async_req=True)
268
+ >>> result = thread.get()
269
+
270
+ Args:
271
+ data_source_id (str):
272
+ blob_id (str):
273
+ file (file_type):
274
+
275
+ Keyword Args:
276
+ _return_http_data_only (bool): response data without head status
277
+ code and headers. Default is True.
278
+ _preload_content (bool): if False, the urllib3.HTTPResponse object
279
+ will be returned without reading/decoding response data.
280
+ Default is True.
281
+ _request_timeout (int/float/tuple): timeout setting for this request. If
282
+ one number provided, it will be total request timeout. It can also
283
+ be a pair (tuple) of (connection, read) timeouts.
284
+ Default is None.
285
+ _check_input_type (bool): specifies if type checking
286
+ should be done one the data sent to the server.
287
+ Default is True.
288
+ _check_return_type (bool): specifies if type checking
289
+ should be done one the data received from the server.
290
+ Default is True.
291
+ _spec_property_naming (bool): True if the variable names in the input data
292
+ are serialized names, as specified in the OpenAPI document.
293
+ False if the variable names in the input data
294
+ are pythonic names, e.g. snake case (default)
295
+ _content_type (str/None): force body content-type.
296
+ Default is None and content-type will be predicted by allowed
297
+ content-types and body.
298
+ _host_index (int/None): specifies the index of the server
299
+ that we want to use.
300
+ Default is read from the configuration.
301
+ _request_auths (list): set to override the auth_settings for an a single
302
+ request; this effectively ignores the authentication
303
+ in the spec for a single request.
304
+ Default is None
305
+ async_req (bool): execute request asynchronously
306
+
307
+ Returns:
308
+ str
309
+ If the method is called asynchronously, returns the request
310
+ thread.
311
+ """
312
+ kwargs['async_req'] = kwargs.get(
313
+ 'async_req', False
314
+ )
315
+ kwargs['_return_http_data_only'] = kwargs.get(
316
+ '_return_http_data_only', True
317
+ )
318
+ kwargs['_preload_content'] = kwargs.get(
319
+ '_preload_content', True
320
+ )
321
+ kwargs['_request_timeout'] = kwargs.get(
322
+ '_request_timeout', None
323
+ )
324
+ kwargs['_check_input_type'] = kwargs.get(
325
+ '_check_input_type', True
326
+ )
327
+ kwargs['_check_return_type'] = kwargs.get(
328
+ '_check_return_type', True
329
+ )
330
+ kwargs['_spec_property_naming'] = kwargs.get(
331
+ '_spec_property_naming', False
332
+ )
333
+ kwargs['_content_type'] = kwargs.get(
334
+ '_content_type')
335
+ kwargs['_host_index'] = kwargs.get('_host_index')
336
+ kwargs['_request_auths'] = kwargs.get('_request_auths', None)
337
+ kwargs['data_source_id'] = \
338
+ data_source_id
339
+ kwargs['blob_id'] = \
340
+ blob_id
341
+ kwargs['file'] = \
342
+ file
343
+ return self.blob_upload_endpoint.call_with_http_info(**kwargs)
344
+