terra-scientific-pipelines-service-api-client 0.1.45__py3-none-any.whl → 1.4.7__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 (22) hide show
  1. teaspoons_client/__init__.py +4 -1
  2. teaspoons_client/api/pipeline_runs_api.py +323 -4
  3. teaspoons_client/api_client.py +1 -1
  4. teaspoons_client/configuration.py +1 -1
  5. teaspoons_client/models/__init__.py +3 -0
  6. teaspoons_client/models/admin_pipeline.py +4 -2
  7. teaspoons_client/models/admin_quota.py +1 -1
  8. teaspoons_client/models/get_pipeline_runs_response.py +4 -2
  9. teaspoons_client/models/get_pipeline_runs_response_v2.py +97 -0
  10. teaspoons_client/models/pipeline_output_definition.py +93 -0
  11. teaspoons_client/models/pipeline_quota.py +93 -0
  12. teaspoons_client/models/pipeline_run.py +9 -3
  13. teaspoons_client/models/pipeline_run_report.py +4 -2
  14. teaspoons_client/models/pipeline_user_provided_input_definition.py +17 -7
  15. teaspoons_client/models/pipeline_with_details.py +18 -2
  16. teaspoons_client/models/prepare_pipeline_run_request_body.py +5 -3
  17. teaspoons_client/models/quota_with_details.py +1 -1
  18. teaspoons_client/models/update_pipeline_request_body.py +6 -4
  19. {terra_scientific_pipelines_service_api_client-0.1.45.dist-info → terra_scientific_pipelines_service_api_client-1.4.7.dist-info}/METADATA +2 -2
  20. {terra_scientific_pipelines_service_api_client-0.1.45.dist-info → terra_scientific_pipelines_service_api_client-1.4.7.dist-info}/RECORD +22 -19
  21. {terra_scientific_pipelines_service_api_client-0.1.45.dist-info → terra_scientific_pipelines_service_api_client-1.4.7.dist-info}/WHEEL +1 -1
  22. {terra_scientific_pipelines_service_api_client-0.1.45.dist-info → terra_scientific_pipelines_service_api_client-1.4.7.dist-info}/top_level.txt +0 -0
@@ -14,7 +14,7 @@
14
14
  """ # noqa: E501
15
15
 
16
16
 
17
- __version__ = "0.1.45"
17
+ __version__ = "1.4.7"
18
18
 
19
19
  # import apis into sdk package
20
20
  from teaspoons_client.api.admin_api import AdminApi
@@ -43,11 +43,14 @@ from teaspoons_client.models.error_report import ErrorReport
43
43
  from teaspoons_client.models.get_jobs_response import GetJobsResponse
44
44
  from teaspoons_client.models.get_pipeline_details_request_body import GetPipelineDetailsRequestBody
45
45
  from teaspoons_client.models.get_pipeline_runs_response import GetPipelineRunsResponse
46
+ from teaspoons_client.models.get_pipeline_runs_response_v2 import GetPipelineRunsResponseV2
46
47
  from teaspoons_client.models.get_pipelines_result import GetPipelinesResult
47
48
  from teaspoons_client.models.job_control import JobControl
48
49
  from teaspoons_client.models.job_report import JobReport
49
50
  from teaspoons_client.models.job_result import JobResult
50
51
  from teaspoons_client.models.pipeline import Pipeline
52
+ from teaspoons_client.models.pipeline_output_definition import PipelineOutputDefinition
53
+ from teaspoons_client.models.pipeline_quota import PipelineQuota
51
54
  from teaspoons_client.models.pipeline_run import PipelineRun
52
55
  from teaspoons_client.models.pipeline_run_report import PipelineRunReport
53
56
  from teaspoons_client.models.pipeline_user_provided_input_definition import PipelineUserProvidedInputDefinition
@@ -16,11 +16,12 @@ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
16
  from typing import Any, Dict, List, Optional, Tuple, Union
17
17
  from typing_extensions import Annotated
18
18
 
19
- from pydantic import Field, StrictStr
19
+ from pydantic import Field, StrictStr, field_validator
20
20
  from typing import Optional
21
21
  from typing_extensions import Annotated
22
22
  from teaspoons_client.models.async_pipeline_run_response import AsyncPipelineRunResponse
23
23
  from teaspoons_client.models.get_pipeline_runs_response import GetPipelineRunsResponse
24
+ from teaspoons_client.models.get_pipeline_runs_response_v2 import GetPipelineRunsResponseV2
24
25
  from teaspoons_client.models.prepare_pipeline_run_request_body import PreparePipelineRunRequestBody
25
26
  from teaspoons_client.models.prepare_pipeline_run_response import PreparePipelineRunResponse
26
27
  from teaspoons_client.models.start_pipeline_run_request_body import StartPipelineRunRequestBody
@@ -61,7 +62,7 @@ class PipelineRunsApi:
61
62
  _headers: Optional[Dict[StrictStr, Any]] = None,
62
63
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
63
64
  ) -> GetPipelineRunsResponse:
64
- """Return a paginated list of all pipeline runs the caller has access to
65
+ """(Deprecated) Return a paginated list of all pipeline runs the caller has access to
65
66
 
66
67
 
67
68
  :param limit: The maximum number of items to return. Default 10. Max 100.
@@ -89,6 +90,7 @@ class PipelineRunsApi:
89
90
  :type _host_index: int, optional
90
91
  :return: Returns the result object.
91
92
  """ # noqa: E501
93
+ warnings.warn("GET /api/pipelineruns/v1/pipelineruns is deprecated.", DeprecationWarning)
92
94
 
93
95
  _param = self._get_all_pipeline_runs_serialize(
94
96
  limit=limit,
@@ -132,7 +134,7 @@ class PipelineRunsApi:
132
134
  _headers: Optional[Dict[StrictStr, Any]] = None,
133
135
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
134
136
  ) -> ApiResponse[GetPipelineRunsResponse]:
135
- """Return a paginated list of all pipeline runs the caller has access to
137
+ """(Deprecated) Return a paginated list of all pipeline runs the caller has access to
136
138
 
137
139
 
138
140
  :param limit: The maximum number of items to return. Default 10. Max 100.
@@ -160,6 +162,7 @@ class PipelineRunsApi:
160
162
  :type _host_index: int, optional
161
163
  :return: Returns the result object.
162
164
  """ # noqa: E501
165
+ warnings.warn("GET /api/pipelineruns/v1/pipelineruns is deprecated.", DeprecationWarning)
163
166
 
164
167
  _param = self._get_all_pipeline_runs_serialize(
165
168
  limit=limit,
@@ -203,7 +206,7 @@ class PipelineRunsApi:
203
206
  _headers: Optional[Dict[StrictStr, Any]] = None,
204
207
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
205
208
  ) -> RESTResponseType:
206
- """Return a paginated list of all pipeline runs the caller has access to
209
+ """(Deprecated) Return a paginated list of all pipeline runs the caller has access to
207
210
 
208
211
 
209
212
  :param limit: The maximum number of items to return. Default 10. Max 100.
@@ -231,6 +234,7 @@ class PipelineRunsApi:
231
234
  :type _host_index: int, optional
232
235
  :return: Returns the result object.
233
236
  """ # noqa: E501
237
+ warnings.warn("GET /api/pipelineruns/v1/pipelineruns is deprecated.", DeprecationWarning)
234
238
 
235
239
  _param = self._get_all_pipeline_runs_serialize(
236
240
  limit=limit,
@@ -324,6 +328,321 @@ class PipelineRunsApi:
324
328
 
325
329
 
326
330
 
331
+ @validate_call
332
+ def get_all_pipeline_runs_v2(
333
+ self,
334
+ page_number: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page number to return. Default 1.")] = None,
335
+ page_size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The maximum number of items to return. Default 10. Max 100.")] = None,
336
+ sort_property: Annotated[Optional[StrictStr], Field(description="The property to sort on. Default id.")] = None,
337
+ sort_direction: Annotated[Optional[StrictStr], Field(description="The direction to sort. Default desc.")] = None,
338
+ _request_timeout: Union[
339
+ None,
340
+ Annotated[StrictFloat, Field(gt=0)],
341
+ Tuple[
342
+ Annotated[StrictFloat, Field(gt=0)],
343
+ Annotated[StrictFloat, Field(gt=0)]
344
+ ]
345
+ ] = None,
346
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
347
+ _content_type: Optional[StrictStr] = None,
348
+ _headers: Optional[Dict[StrictStr, Any]] = None,
349
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
350
+ ) -> GetPipelineRunsResponseV2:
351
+ """Return a paginated sortable list of all pipeline runs the caller has access to
352
+
353
+
354
+ :param page_number: The page number to return. Default 1.
355
+ :type page_number: int
356
+ :param page_size: The maximum number of items to return. Default 10. Max 100.
357
+ :type page_size: int
358
+ :param sort_property: The property to sort on. Default id.
359
+ :type sort_property: str
360
+ :param sort_direction: The direction to sort. Default desc.
361
+ :type sort_direction: str
362
+ :param _request_timeout: timeout setting for this request. If one
363
+ number provided, it will be total request
364
+ timeout. It can also be a pair (tuple) of
365
+ (connection, read) timeouts.
366
+ :type _request_timeout: int, tuple(int, int), optional
367
+ :param _request_auth: set to override the auth_settings for an a single
368
+ request; this effectively ignores the
369
+ authentication in the spec for a single request.
370
+ :type _request_auth: dict, optional
371
+ :param _content_type: force content-type for the request.
372
+ :type _content_type: str, Optional
373
+ :param _headers: set to override the headers for a single
374
+ request; this effectively ignores the headers
375
+ in the spec for a single request.
376
+ :type _headers: dict, optional
377
+ :param _host_index: set to override the host_index for a single
378
+ request; this effectively ignores the host_index
379
+ in the spec for a single request.
380
+ :type _host_index: int, optional
381
+ :return: Returns the result object.
382
+ """ # noqa: E501
383
+
384
+ _param = self._get_all_pipeline_runs_v2_serialize(
385
+ page_number=page_number,
386
+ page_size=page_size,
387
+ sort_property=sort_property,
388
+ sort_direction=sort_direction,
389
+ _request_auth=_request_auth,
390
+ _content_type=_content_type,
391
+ _headers=_headers,
392
+ _host_index=_host_index
393
+ )
394
+
395
+ _response_types_map: Dict[str, Optional[str]] = {
396
+ '200': "GetPipelineRunsResponseV2",
397
+ '500': "ErrorReport",
398
+ }
399
+ response_data = self.api_client.call_api(
400
+ *_param,
401
+ _request_timeout=_request_timeout
402
+ )
403
+ response_data.read()
404
+ return self.api_client.response_deserialize(
405
+ response_data=response_data,
406
+ response_types_map=_response_types_map,
407
+ ).data
408
+
409
+
410
+ @validate_call
411
+ def get_all_pipeline_runs_v2_with_http_info(
412
+ self,
413
+ page_number: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page number to return. Default 1.")] = None,
414
+ page_size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The maximum number of items to return. Default 10. Max 100.")] = None,
415
+ sort_property: Annotated[Optional[StrictStr], Field(description="The property to sort on. Default id.")] = None,
416
+ sort_direction: Annotated[Optional[StrictStr], Field(description="The direction to sort. Default desc.")] = None,
417
+ _request_timeout: Union[
418
+ None,
419
+ Annotated[StrictFloat, Field(gt=0)],
420
+ Tuple[
421
+ Annotated[StrictFloat, Field(gt=0)],
422
+ Annotated[StrictFloat, Field(gt=0)]
423
+ ]
424
+ ] = None,
425
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
426
+ _content_type: Optional[StrictStr] = None,
427
+ _headers: Optional[Dict[StrictStr, Any]] = None,
428
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
429
+ ) -> ApiResponse[GetPipelineRunsResponseV2]:
430
+ """Return a paginated sortable list of all pipeline runs the caller has access to
431
+
432
+
433
+ :param page_number: The page number to return. Default 1.
434
+ :type page_number: int
435
+ :param page_size: The maximum number of items to return. Default 10. Max 100.
436
+ :type page_size: int
437
+ :param sort_property: The property to sort on. Default id.
438
+ :type sort_property: str
439
+ :param sort_direction: The direction to sort. Default desc.
440
+ :type sort_direction: str
441
+ :param _request_timeout: timeout setting for this request. If one
442
+ number provided, it will be total request
443
+ timeout. It can also be a pair (tuple) of
444
+ (connection, read) timeouts.
445
+ :type _request_timeout: int, tuple(int, int), optional
446
+ :param _request_auth: set to override the auth_settings for an a single
447
+ request; this effectively ignores the
448
+ authentication in the spec for a single request.
449
+ :type _request_auth: dict, optional
450
+ :param _content_type: force content-type for the request.
451
+ :type _content_type: str, Optional
452
+ :param _headers: set to override the headers for a single
453
+ request; this effectively ignores the headers
454
+ in the spec for a single request.
455
+ :type _headers: dict, optional
456
+ :param _host_index: set to override the host_index for a single
457
+ request; this effectively ignores the host_index
458
+ in the spec for a single request.
459
+ :type _host_index: int, optional
460
+ :return: Returns the result object.
461
+ """ # noqa: E501
462
+
463
+ _param = self._get_all_pipeline_runs_v2_serialize(
464
+ page_number=page_number,
465
+ page_size=page_size,
466
+ sort_property=sort_property,
467
+ sort_direction=sort_direction,
468
+ _request_auth=_request_auth,
469
+ _content_type=_content_type,
470
+ _headers=_headers,
471
+ _host_index=_host_index
472
+ )
473
+
474
+ _response_types_map: Dict[str, Optional[str]] = {
475
+ '200': "GetPipelineRunsResponseV2",
476
+ '500': "ErrorReport",
477
+ }
478
+ response_data = self.api_client.call_api(
479
+ *_param,
480
+ _request_timeout=_request_timeout
481
+ )
482
+ response_data.read()
483
+ return self.api_client.response_deserialize(
484
+ response_data=response_data,
485
+ response_types_map=_response_types_map,
486
+ )
487
+
488
+
489
+ @validate_call
490
+ def get_all_pipeline_runs_v2_without_preload_content(
491
+ self,
492
+ page_number: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The page number to return. Default 1.")] = None,
493
+ page_size: Annotated[Optional[Annotated[int, Field(strict=True, ge=1)]], Field(description="The maximum number of items to return. Default 10. Max 100.")] = None,
494
+ sort_property: Annotated[Optional[StrictStr], Field(description="The property to sort on. Default id.")] = None,
495
+ sort_direction: Annotated[Optional[StrictStr], Field(description="The direction to sort. Default desc.")] = None,
496
+ _request_timeout: Union[
497
+ None,
498
+ Annotated[StrictFloat, Field(gt=0)],
499
+ Tuple[
500
+ Annotated[StrictFloat, Field(gt=0)],
501
+ Annotated[StrictFloat, Field(gt=0)]
502
+ ]
503
+ ] = None,
504
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
505
+ _content_type: Optional[StrictStr] = None,
506
+ _headers: Optional[Dict[StrictStr, Any]] = None,
507
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
508
+ ) -> RESTResponseType:
509
+ """Return a paginated sortable list of all pipeline runs the caller has access to
510
+
511
+
512
+ :param page_number: The page number to return. Default 1.
513
+ :type page_number: int
514
+ :param page_size: The maximum number of items to return. Default 10. Max 100.
515
+ :type page_size: int
516
+ :param sort_property: The property to sort on. Default id.
517
+ :type sort_property: str
518
+ :param sort_direction: The direction to sort. Default desc.
519
+ :type sort_direction: str
520
+ :param _request_timeout: timeout setting for this request. If one
521
+ number provided, it will be total request
522
+ timeout. It can also be a pair (tuple) of
523
+ (connection, read) timeouts.
524
+ :type _request_timeout: int, tuple(int, int), optional
525
+ :param _request_auth: set to override the auth_settings for an a single
526
+ request; this effectively ignores the
527
+ authentication in the spec for a single request.
528
+ :type _request_auth: dict, optional
529
+ :param _content_type: force content-type for the request.
530
+ :type _content_type: str, Optional
531
+ :param _headers: set to override the headers for a single
532
+ request; this effectively ignores the headers
533
+ in the spec for a single request.
534
+ :type _headers: dict, optional
535
+ :param _host_index: set to override the host_index for a single
536
+ request; this effectively ignores the host_index
537
+ in the spec for a single request.
538
+ :type _host_index: int, optional
539
+ :return: Returns the result object.
540
+ """ # noqa: E501
541
+
542
+ _param = self._get_all_pipeline_runs_v2_serialize(
543
+ page_number=page_number,
544
+ page_size=page_size,
545
+ sort_property=sort_property,
546
+ sort_direction=sort_direction,
547
+ _request_auth=_request_auth,
548
+ _content_type=_content_type,
549
+ _headers=_headers,
550
+ _host_index=_host_index
551
+ )
552
+
553
+ _response_types_map: Dict[str, Optional[str]] = {
554
+ '200': "GetPipelineRunsResponseV2",
555
+ '500': "ErrorReport",
556
+ }
557
+ response_data = self.api_client.call_api(
558
+ *_param,
559
+ _request_timeout=_request_timeout
560
+ )
561
+ return response_data.response
562
+
563
+
564
+ def _get_all_pipeline_runs_v2_serialize(
565
+ self,
566
+ page_number,
567
+ page_size,
568
+ sort_property,
569
+ sort_direction,
570
+ _request_auth,
571
+ _content_type,
572
+ _headers,
573
+ _host_index,
574
+ ) -> RequestSerialized:
575
+
576
+ _host = None
577
+
578
+ _collection_formats: Dict[str, str] = {
579
+ }
580
+
581
+ _path_params: Dict[str, str] = {}
582
+ _query_params: List[Tuple[str, str]] = []
583
+ _header_params: Dict[str, Optional[str]] = _headers or {}
584
+ _form_params: List[Tuple[str, str]] = []
585
+ _files: Dict[
586
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
587
+ ] = {}
588
+ _body_params: Optional[bytes] = None
589
+
590
+ # process the path parameters
591
+ # process the query parameters
592
+ if page_number is not None:
593
+
594
+ _query_params.append(('pageNumber', page_number))
595
+
596
+ if page_size is not None:
597
+
598
+ _query_params.append(('pageSize', page_size))
599
+
600
+ if sort_property is not None:
601
+
602
+ _query_params.append(('sortProperty', sort_property))
603
+
604
+ if sort_direction is not None:
605
+
606
+ _query_params.append(('sortDirection', sort_direction))
607
+
608
+ # process the header parameters
609
+ # process the form parameters
610
+ # process the body parameter
611
+
612
+
613
+ # set the HTTP header `Accept`
614
+ if 'Accept' not in _header_params:
615
+ _header_params['Accept'] = self.api_client.select_header_accept(
616
+ [
617
+ 'application/json'
618
+ ]
619
+ )
620
+
621
+
622
+ # authentication setting
623
+ _auth_settings: List[str] = [
624
+ 'oidc',
625
+ 'bearerAuth'
626
+ ]
627
+
628
+ return self.api_client.param_serialize(
629
+ method='GET',
630
+ resource_path='/api/pipelineruns/v2/pipelineruns',
631
+ path_params=_path_params,
632
+ query_params=_query_params,
633
+ header_params=_header_params,
634
+ body=_body_params,
635
+ post_params=_form_params,
636
+ files=_files,
637
+ auth_settings=_auth_settings,
638
+ collection_formats=_collection_formats,
639
+ _host=_host,
640
+ _request_auth=_request_auth
641
+ )
642
+
643
+
644
+
645
+
327
646
  @validate_call
328
647
  def get_pipeline_run_result(
329
648
  self,
@@ -90,7 +90,7 @@ class ApiClient:
90
90
  self.default_headers[header_name] = header_value
91
91
  self.cookie = cookie
92
92
  # Set default User-Agent.
93
- self.user_agent = 'terra-scientific-pipelines-service-api-client/0.1.45/python'
93
+ self.user_agent = 'terra-scientific-pipelines-service-api-client/1.4.7/python'
94
94
  self.client_side_validation = configuration.client_side_validation
95
95
 
96
96
  def __enter__(self):
@@ -399,7 +399,7 @@ class Configuration:
399
399
  "OS: {env}\n"\
400
400
  "Python Version: {pyversion}\n"\
401
401
  "Version of the API: 1.0.0\n"\
402
- "SDK Package Version: 0.1.45".\
402
+ "SDK Package Version: 1.4.7".\
403
403
  format(env=sys.platform, pyversion=sys.version)
404
404
 
405
405
  def get_host_settings(self):
@@ -21,11 +21,14 @@ from teaspoons_client.models.error_report import ErrorReport
21
21
  from teaspoons_client.models.get_jobs_response import GetJobsResponse
22
22
  from teaspoons_client.models.get_pipeline_details_request_body import GetPipelineDetailsRequestBody
23
23
  from teaspoons_client.models.get_pipeline_runs_response import GetPipelineRunsResponse
24
+ from teaspoons_client.models.get_pipeline_runs_response_v2 import GetPipelineRunsResponseV2
24
25
  from teaspoons_client.models.get_pipelines_result import GetPipelinesResult
25
26
  from teaspoons_client.models.job_control import JobControl
26
27
  from teaspoons_client.models.job_report import JobReport
27
28
  from teaspoons_client.models.job_result import JobResult
28
29
  from teaspoons_client.models.pipeline import Pipeline
30
+ from teaspoons_client.models.pipeline_output_definition import PipelineOutputDefinition
31
+ from teaspoons_client.models.pipeline_quota import PipelineQuota
29
32
  from teaspoons_client.models.pipeline_run import PipelineRun
30
33
  from teaspoons_client.models.pipeline_run_report import PipelineRunReport
31
34
  from teaspoons_client.models.pipeline_user_provided_input_definition import PipelineUserProvidedInputDefinition
@@ -17,7 +17,7 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List
22
22
  from typing import Optional, Set
23
23
  from typing_extensions import Self
@@ -28,6 +28,7 @@ class AdminPipeline(BaseModel):
28
28
  """ # noqa: E501
29
29
  pipeline_name: StrictStr = Field(description="The identifier string for the Pipeline. ", alias="pipelineName")
30
30
  pipeline_version: StrictInt = Field(description="An identifier Integer for the Pipeline Version. ", alias="pipelineVersion")
31
+ is_hidden: StrictBool = Field(description="Whether the pipeline is hidden. ", alias="isHidden")
31
32
  display_name: StrictStr = Field(description="The display name for the Pipeline. ", alias="displayName")
32
33
  description: StrictStr = Field(description="The description for the Pipeline. ")
33
34
  tool_version: StrictStr = Field(description="An identifier string for the Pipeline Tool Version i.e. github repo tag/branch/release ", alias="toolVersion")
@@ -35,7 +36,7 @@ class AdminPipeline(BaseModel):
35
36
  workspace_name: StrictStr = Field(description="The name of the workspace to run the pipeline in. ", alias="workspaceName")
36
37
  workspace_storage_container_name: StrictStr = Field(description="The name of the workspace storage container (e.g. google bucket name, without gs:// prefix). ", alias="workspaceStorageContainerName")
37
38
  workspace_google_project: StrictStr = Field(description="The google project of the workspace to run the pipeline in. ", alias="workspaceGoogleProject")
38
- __properties: ClassVar[List[str]] = ["pipelineName", "pipelineVersion", "displayName", "description", "toolVersion", "workspaceBillingProject", "workspaceName", "workspaceStorageContainerName", "workspaceGoogleProject"]
39
+ __properties: ClassVar[List[str]] = ["pipelineName", "pipelineVersion", "isHidden", "displayName", "description", "toolVersion", "workspaceBillingProject", "workspaceName", "workspaceStorageContainerName", "workspaceGoogleProject"]
39
40
 
40
41
  model_config = ConfigDict(
41
42
  populate_by_name=True,
@@ -90,6 +91,7 @@ class AdminPipeline(BaseModel):
90
91
  _obj = cls.model_validate({
91
92
  "pipelineName": obj.get("pipelineName"),
92
93
  "pipelineVersion": obj.get("pipelineVersion"),
94
+ "isHidden": obj.get("isHidden"),
93
95
  "displayName": obj.get("displayName"),
94
96
  "description": obj.get("description"),
95
97
  "toolVersion": obj.get("toolVersion"),
@@ -29,7 +29,7 @@ class AdminQuota(BaseModel):
29
29
  user_id: StrictStr = Field(description="The identifier string for the user who submitted a job request. ", alias="userId")
30
30
  pipeline_name: StrictStr = Field(description="The identifier string for the Pipeline. ", alias="pipelineName")
31
31
  quota_limit: StrictInt = Field(description="Maximum allowable quota for the pipeline ", alias="quotaLimit")
32
- quota_consumed: StrictInt = Field(description="Quota consumed by the user ", alias="quotaConsumed")
32
+ quota_consumed: StrictInt = Field(description="Quota consumed by the user or job ", alias="quotaConsumed")
33
33
  __properties: ClassVar[List[str]] = ["userId", "pipelineName", "quotaLimit", "quotaConsumed"]
34
34
 
35
35
  model_config = ConfigDict(
@@ -17,7 +17,7 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictStr
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
22
  from teaspoons_client.models.pipeline_run import PipelineRun
23
23
  from typing import Optional, Set
@@ -28,8 +28,9 @@ class GetPipelineRunsResponse(BaseModel):
28
28
  GetPipelineRunsResponse
29
29
  """ # noqa: E501
30
30
  page_token: Optional[StrictStr] = Field(default=None, alias="pageToken")
31
+ total_results: Optional[StrictInt] = Field(default=None, alias="totalResults")
31
32
  results: Optional[List[PipelineRun]] = Field(default=None, description="List of pipeline runs")
32
- __properties: ClassVar[List[str]] = ["pageToken", "results"]
33
+ __properties: ClassVar[List[str]] = ["pageToken", "totalResults", "results"]
33
34
 
34
35
  model_config = ConfigDict(
35
36
  populate_by_name=True,
@@ -90,6 +91,7 @@ class GetPipelineRunsResponse(BaseModel):
90
91
 
91
92
  _obj = cls.model_validate({
92
93
  "pageToken": obj.get("pageToken"),
94
+ "totalResults": obj.get("totalResults"),
93
95
  "results": [PipelineRun.from_dict(_item) for _item in obj["results"]] if obj.get("results") is not None else None
94
96
  })
95
97
  return _obj
@@ -0,0 +1,97 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Terra Scientific Pipelines Service
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: 1.0.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from teaspoons_client.models.pipeline_run import PipelineRun
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class GetPipelineRunsResponseV2(BaseModel):
27
+ """
28
+ GetPipelineRunsResponseV2
29
+ """ # noqa: E501
30
+ total_results: Optional[StrictInt] = Field(default=None, alias="totalResults")
31
+ results: Optional[List[PipelineRun]] = Field(default=None, description="List of pipeline runs")
32
+ __properties: ClassVar[List[str]] = ["totalResults", "results"]
33
+
34
+ model_config = ConfigDict(
35
+ populate_by_name=True,
36
+ validate_assignment=True,
37
+ protected_namespaces=(),
38
+ )
39
+
40
+
41
+ def to_str(self) -> str:
42
+ """Returns the string representation of the model using alias"""
43
+ return pprint.pformat(self.model_dump(by_alias=True))
44
+
45
+ def to_json(self) -> str:
46
+ """Returns the JSON representation of the model using alias"""
47
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
48
+ return json.dumps(self.to_dict())
49
+
50
+ @classmethod
51
+ def from_json(cls, json_str: str) -> Optional[Self]:
52
+ """Create an instance of GetPipelineRunsResponseV2 from a JSON string"""
53
+ return cls.from_dict(json.loads(json_str))
54
+
55
+ def to_dict(self) -> Dict[str, Any]:
56
+ """Return the dictionary representation of the model using alias.
57
+
58
+ This has the following differences from calling pydantic's
59
+ `self.model_dump(by_alias=True)`:
60
+
61
+ * `None` is only added to the output dict for nullable fields that
62
+ were set at model initialization. Other fields with value `None`
63
+ are ignored.
64
+ """
65
+ excluded_fields: Set[str] = set([
66
+ ])
67
+
68
+ _dict = self.model_dump(
69
+ by_alias=True,
70
+ exclude=excluded_fields,
71
+ exclude_none=True,
72
+ )
73
+ # override the default output from pydantic by calling `to_dict()` of each item in results (list)
74
+ _items = []
75
+ if self.results:
76
+ for _item_results in self.results:
77
+ if _item_results:
78
+ _items.append(_item_results.to_dict())
79
+ _dict['results'] = _items
80
+ return _dict
81
+
82
+ @classmethod
83
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
84
+ """Create an instance of GetPipelineRunsResponseV2 from a dict"""
85
+ if obj is None:
86
+ return None
87
+
88
+ if not isinstance(obj, dict):
89
+ return cls.model_validate(obj)
90
+
91
+ _obj = cls.model_validate({
92
+ "totalResults": obj.get("totalResults"),
93
+ "results": [PipelineRun.from_dict(_item) for _item in obj["results"]] if obj.get("results") is not None else None
94
+ })
95
+ return _obj
96
+
97
+
@@ -0,0 +1,93 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Terra Scientific Pipelines Service
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: 1.0.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
24
+
25
+ class PipelineOutputDefinition(BaseModel):
26
+ """
27
+ An output field and its specifications for the Pipeline.
28
+ """ # noqa: E501
29
+ name: StrictStr = Field(description="The name of the pipeline output field. ")
30
+ display_name: StrictStr = Field(description="The display name of the pipeline output field. ", alias="displayName")
31
+ description: Optional[StrictStr] = Field(default=None, description="The description of the pipeline output field. ")
32
+ type: StrictStr = Field(description="The type of the pipeline output field. ")
33
+ __properties: ClassVar[List[str]] = ["name", "displayName", "description", "type"]
34
+
35
+ model_config = ConfigDict(
36
+ populate_by_name=True,
37
+ validate_assignment=True,
38
+ protected_namespaces=(),
39
+ )
40
+
41
+
42
+ def to_str(self) -> str:
43
+ """Returns the string representation of the model using alias"""
44
+ return pprint.pformat(self.model_dump(by_alias=True))
45
+
46
+ def to_json(self) -> str:
47
+ """Returns the JSON representation of the model using alias"""
48
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
49
+ return json.dumps(self.to_dict())
50
+
51
+ @classmethod
52
+ def from_json(cls, json_str: str) -> Optional[Self]:
53
+ """Create an instance of PipelineOutputDefinition from a JSON string"""
54
+ return cls.from_dict(json.loads(json_str))
55
+
56
+ def to_dict(self) -> Dict[str, Any]:
57
+ """Return the dictionary representation of the model using alias.
58
+
59
+ This has the following differences from calling pydantic's
60
+ `self.model_dump(by_alias=True)`:
61
+
62
+ * `None` is only added to the output dict for nullable fields that
63
+ were set at model initialization. Other fields with value `None`
64
+ are ignored.
65
+ """
66
+ excluded_fields: Set[str] = set([
67
+ ])
68
+
69
+ _dict = self.model_dump(
70
+ by_alias=True,
71
+ exclude=excluded_fields,
72
+ exclude_none=True,
73
+ )
74
+ return _dict
75
+
76
+ @classmethod
77
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
78
+ """Create an instance of PipelineOutputDefinition from a dict"""
79
+ if obj is None:
80
+ return None
81
+
82
+ if not isinstance(obj, dict):
83
+ return cls.model_validate(obj)
84
+
85
+ _obj = cls.model_validate({
86
+ "name": obj.get("name"),
87
+ "displayName": obj.get("displayName"),
88
+ "description": obj.get("description"),
89
+ "type": obj.get("type")
90
+ })
91
+ return _obj
92
+
93
+
@@ -0,0 +1,93 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Terra Scientific Pipelines Service
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
7
+
8
+ The version of the OpenAPI document: 1.0.0
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
21
+ from typing import Any, ClassVar, Dict, List
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
24
+
25
+ class PipelineQuota(BaseModel):
26
+ """
27
+ The quota for the pipeline.
28
+ """ # noqa: E501
29
+ pipeline_name: StrictStr = Field(description="The identifier string for the Pipeline. ", alias="pipelineName")
30
+ default_quota: StrictInt = Field(description="Default quota for the pipeline. ", alias="defaultQuota")
31
+ min_quota_consumed: StrictInt = Field(description="The minimum quota consumed per run. ", alias="minQuotaConsumed")
32
+ quota_units: StrictStr = Field(description="Units for pipeline quota ", alias="quotaUnits")
33
+ __properties: ClassVar[List[str]] = ["pipelineName", "defaultQuota", "minQuotaConsumed", "quotaUnits"]
34
+
35
+ model_config = ConfigDict(
36
+ populate_by_name=True,
37
+ validate_assignment=True,
38
+ protected_namespaces=(),
39
+ )
40
+
41
+
42
+ def to_str(self) -> str:
43
+ """Returns the string representation of the model using alias"""
44
+ return pprint.pformat(self.model_dump(by_alias=True))
45
+
46
+ def to_json(self) -> str:
47
+ """Returns the JSON representation of the model using alias"""
48
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
49
+ return json.dumps(self.to_dict())
50
+
51
+ @classmethod
52
+ def from_json(cls, json_str: str) -> Optional[Self]:
53
+ """Create an instance of PipelineQuota from a JSON string"""
54
+ return cls.from_dict(json.loads(json_str))
55
+
56
+ def to_dict(self) -> Dict[str, Any]:
57
+ """Return the dictionary representation of the model using alias.
58
+
59
+ This has the following differences from calling pydantic's
60
+ `self.model_dump(by_alias=True)`:
61
+
62
+ * `None` is only added to the output dict for nullable fields that
63
+ were set at model initialization. Other fields with value `None`
64
+ are ignored.
65
+ """
66
+ excluded_fields: Set[str] = set([
67
+ ])
68
+
69
+ _dict = self.model_dump(
70
+ by_alias=True,
71
+ exclude=excluded_fields,
72
+ exclude_none=True,
73
+ )
74
+ return _dict
75
+
76
+ @classmethod
77
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
78
+ """Create an instance of PipelineQuota from a dict"""
79
+ if obj is None:
80
+ return None
81
+
82
+ if not isinstance(obj, dict):
83
+ return cls.model_validate(obj)
84
+
85
+ _obj = cls.model_validate({
86
+ "pipelineName": obj.get("pipelineName"),
87
+ "defaultQuota": obj.get("defaultQuota"),
88
+ "minQuotaConsumed": obj.get("minQuotaConsumed"),
89
+ "quotaUnits": obj.get("quotaUnits")
90
+ })
91
+ return _obj
92
+
93
+
@@ -17,7 +17,7 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictStr
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
22
  from typing import Optional, Set
23
23
  from typing_extensions import Self
@@ -28,11 +28,14 @@ class PipelineRun(BaseModel):
28
28
  """ # noqa: E501
29
29
  job_id: StrictStr = Field(description="Required unique identifier (UUID) for a job. ", alias="jobId")
30
30
  pipeline_name: StrictStr = Field(description="The identifier string for the Pipeline. ", alias="pipelineName")
31
+ pipeline_version: Optional[StrictInt] = Field(default=None, description="An identifier Integer for the Pipeline Version. ", alias="pipelineVersion")
31
32
  status: StrictStr = Field(description="The current status of the pipeline run. ")
32
33
  description: Optional[StrictStr] = Field(default=None, description="The user-provided description for the pipeline run. ")
33
34
  time_submitted: StrictStr = Field(description="The time the job was submitted. ", alias="timeSubmitted")
34
35
  time_completed: Optional[StrictStr] = Field(default=None, description="The time the job was completed. ", alias="timeCompleted")
35
- __properties: ClassVar[List[str]] = ["jobId", "pipelineName", "status", "description", "timeSubmitted", "timeCompleted"]
36
+ quota_consumed: Optional[StrictInt] = Field(default=None, description="Quota consumed by the user or job ", alias="quotaConsumed")
37
+ output_expiration_date: Optional[StrictStr] = Field(default=None, description="The Date when the pipeline outputs will expire. ", alias="outputExpirationDate")
38
+ __properties: ClassVar[List[str]] = ["jobId", "pipelineName", "pipelineVersion", "status", "description", "timeSubmitted", "timeCompleted", "quotaConsumed", "outputExpirationDate"]
36
39
 
37
40
  model_config = ConfigDict(
38
41
  populate_by_name=True,
@@ -87,10 +90,13 @@ class PipelineRun(BaseModel):
87
90
  _obj = cls.model_validate({
88
91
  "jobId": obj.get("jobId"),
89
92
  "pipelineName": obj.get("pipelineName"),
93
+ "pipelineVersion": obj.get("pipelineVersion"),
90
94
  "status": obj.get("status"),
91
95
  "description": obj.get("description"),
92
96
  "timeSubmitted": obj.get("timeSubmitted"),
93
- "timeCompleted": obj.get("timeCompleted")
97
+ "timeCompleted": obj.get("timeCompleted"),
98
+ "quotaConsumed": obj.get("quotaConsumed"),
99
+ "outputExpirationDate": obj.get("outputExpirationDate")
94
100
  })
95
101
  return _obj
96
102
 
@@ -31,7 +31,8 @@ class PipelineRunReport(BaseModel):
31
31
  tool_version: StrictStr = Field(description="An identifier string for the Pipeline Tool Version i.e. github repo tag/branch/release ", alias="toolVersion")
32
32
  outputs: Optional[Dict[str, Any]] = Field(default=None, description="The output(s) of a successful pipeline run. ")
33
33
  output_expiration_date: Optional[StrictStr] = Field(default=None, description="The Date when the pipeline outputs will expire. ", alias="outputExpirationDate")
34
- __properties: ClassVar[List[str]] = ["pipelineName", "pipelineVersion", "toolVersion", "outputs", "outputExpirationDate"]
34
+ quota_consumed: Optional[StrictInt] = Field(default=None, description="Quota consumed by the user or job ", alias="quotaConsumed")
35
+ __properties: ClassVar[List[str]] = ["pipelineName", "pipelineVersion", "toolVersion", "outputs", "outputExpirationDate", "quotaConsumed"]
35
36
 
36
37
  model_config = ConfigDict(
37
38
  populate_by_name=True,
@@ -88,7 +89,8 @@ class PipelineRunReport(BaseModel):
88
89
  "pipelineVersion": obj.get("pipelineVersion"),
89
90
  "toolVersion": obj.get("toolVersion"),
90
91
  "outputs": obj.get("outputs"),
91
- "outputExpirationDate": obj.get("outputExpirationDate")
92
+ "outputExpirationDate": obj.get("outputExpirationDate"),
93
+ "quotaConsumed": obj.get("quotaConsumed")
92
94
  })
93
95
  return _obj
94
96
 
@@ -17,8 +17,8 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
21
- from typing import Any, ClassVar, Dict, List, Optional
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictFloat, StrictInt, StrictStr
21
+ from typing import Any, ClassVar, Dict, List, Optional, Union
22
22
  from typing import Optional, Set
23
23
  from typing_extensions import Self
24
24
 
@@ -26,11 +26,16 @@ class PipelineUserProvidedInputDefinition(BaseModel):
26
26
  """
27
27
  User-provided input fields and specifications for the Pipeline.
28
28
  """ # noqa: E501
29
- name: Optional[StrictStr] = Field(default=None, description="The name of the input field. ")
30
- type: Optional[StrictStr] = Field(default=None, description="The type of the input field. ")
31
- is_required: Optional[StrictBool] = Field(default=None, description="Whether the input field is required. ", alias="isRequired")
29
+ name: StrictStr = Field(description="The name of the pipeline input field. ")
30
+ display_name: StrictStr = Field(description="The display name of the pipeline input field. ", alias="displayName")
31
+ description: Optional[StrictStr] = Field(default=None, description="The description of the pipeline input field. ")
32
+ type: StrictStr = Field(description="The type of the pipeline input field. ")
33
+ is_required: StrictBool = Field(description="Whether the pipeline input field is required. ", alias="isRequired")
34
+ default_value: Optional[StrictStr] = Field(default=None, description="The default value for the optional input field. ", alias="defaultValue")
32
35
  file_suffix: Optional[StrictStr] = Field(default=None, description="The allowed file suffix for the file. ", alias="fileSuffix")
33
- __properties: ClassVar[List[str]] = ["name", "type", "isRequired", "fileSuffix"]
36
+ min_value: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="The minimum value for the integer or float input field. ", alias="minValue")
37
+ max_value: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="The maximum value for the integer or float input field. ", alias="maxValue")
38
+ __properties: ClassVar[List[str]] = ["name", "displayName", "description", "type", "isRequired", "defaultValue", "fileSuffix", "minValue", "maxValue"]
34
39
 
35
40
  model_config = ConfigDict(
36
41
  populate_by_name=True,
@@ -84,9 +89,14 @@ class PipelineUserProvidedInputDefinition(BaseModel):
84
89
 
85
90
  _obj = cls.model_validate({
86
91
  "name": obj.get("name"),
92
+ "displayName": obj.get("displayName"),
93
+ "description": obj.get("description"),
87
94
  "type": obj.get("type"),
88
95
  "isRequired": obj.get("isRequired"),
89
- "fileSuffix": obj.get("fileSuffix")
96
+ "defaultValue": obj.get("defaultValue"),
97
+ "fileSuffix": obj.get("fileSuffix"),
98
+ "minValue": obj.get("minValue"),
99
+ "maxValue": obj.get("maxValue")
90
100
  })
91
101
  return _obj
92
102
 
@@ -19,6 +19,8 @@ import json
19
19
 
20
20
  from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List
22
+ from teaspoons_client.models.pipeline_output_definition import PipelineOutputDefinition
23
+ from teaspoons_client.models.pipeline_quota import PipelineQuota
22
24
  from teaspoons_client.models.pipeline_user_provided_input_definition import PipelineUserProvidedInputDefinition
23
25
  from typing import Optional, Set
24
26
  from typing_extensions import Self
@@ -33,7 +35,9 @@ class PipelineWithDetails(BaseModel):
33
35
  description: StrictStr = Field(description="The description for the Pipeline. ")
34
36
  type: StrictStr = Field(description="The general type of the Pipeline. ")
35
37
  inputs: List[PipelineUserProvidedInputDefinition] = Field(description="A list of user-provided input fields and specifications for the Pipeline. ")
36
- __properties: ClassVar[List[str]] = ["pipelineName", "displayName", "pipelineVersion", "description", "type", "inputs"]
38
+ outputs: List[PipelineOutputDefinition] = Field(description="A list of output fields and specifications for the Pipeline. ")
39
+ pipeline_quota: PipelineQuota = Field(alias="pipelineQuota")
40
+ __properties: ClassVar[List[str]] = ["pipelineName", "displayName", "pipelineVersion", "description", "type", "inputs", "outputs", "pipelineQuota"]
37
41
 
38
42
  model_config = ConfigDict(
39
43
  populate_by_name=True,
@@ -81,6 +85,16 @@ class PipelineWithDetails(BaseModel):
81
85
  if _item_inputs:
82
86
  _items.append(_item_inputs.to_dict())
83
87
  _dict['inputs'] = _items
88
+ # override the default output from pydantic by calling `to_dict()` of each item in outputs (list)
89
+ _items = []
90
+ if self.outputs:
91
+ for _item_outputs in self.outputs:
92
+ if _item_outputs:
93
+ _items.append(_item_outputs.to_dict())
94
+ _dict['outputs'] = _items
95
+ # override the default output from pydantic by calling `to_dict()` of pipeline_quota
96
+ if self.pipeline_quota:
97
+ _dict['pipelineQuota'] = self.pipeline_quota.to_dict()
84
98
  return _dict
85
99
 
86
100
  @classmethod
@@ -98,7 +112,9 @@ class PipelineWithDetails(BaseModel):
98
112
  "pipelineVersion": obj.get("pipelineVersion"),
99
113
  "description": obj.get("description"),
100
114
  "type": obj.get("type"),
101
- "inputs": [PipelineUserProvidedInputDefinition.from_dict(_item) for _item in obj["inputs"]] if obj.get("inputs") is not None else None
115
+ "inputs": [PipelineUserProvidedInputDefinition.from_dict(_item) for _item in obj["inputs"]] if obj.get("inputs") is not None else None,
116
+ "outputs": [PipelineOutputDefinition.from_dict(_item) for _item in obj["outputs"]] if obj.get("outputs") is not None else None,
117
+ "pipelineQuota": PipelineQuota.from_dict(obj["pipelineQuota"]) if obj.get("pipelineQuota") is not None else None
102
118
  })
103
119
  return _obj
104
120
 
@@ -17,7 +17,7 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
22
  from typing import Optional, Set
23
23
  from typing_extensions import Self
@@ -31,7 +31,8 @@ class PreparePipelineRunRequestBody(BaseModel):
31
31
  pipeline_version: Optional[StrictInt] = Field(default=None, description="An identifier Integer for the Pipeline Version. ", alias="pipelineVersion")
32
32
  pipeline_inputs: Dict[str, Any] = Field(description="A map(string:object) of user-provided inputs for the Pipeline. ", alias="pipelineInputs")
33
33
  description: Optional[StrictStr] = Field(default=None, description="The user-provided description for the pipeline run. ")
34
- __properties: ClassVar[List[str]] = ["jobId", "pipelineName", "pipelineVersion", "pipelineInputs", "description"]
34
+ use_resumable_uploads: Optional[StrictBool] = Field(default=False, description="Whether to use resumable uploads for input files. Default false.", alias="useResumableUploads")
35
+ __properties: ClassVar[List[str]] = ["jobId", "pipelineName", "pipelineVersion", "pipelineInputs", "description", "useResumableUploads"]
35
36
 
36
37
  model_config = ConfigDict(
37
38
  populate_by_name=True,
@@ -88,7 +89,8 @@ class PreparePipelineRunRequestBody(BaseModel):
88
89
  "pipelineName": obj.get("pipelineName"),
89
90
  "pipelineVersion": obj.get("pipelineVersion"),
90
91
  "pipelineInputs": obj.get("pipelineInputs"),
91
- "description": obj.get("description")
92
+ "description": obj.get("description"),
93
+ "useResumableUploads": obj.get("useResumableUploads") if obj.get("useResumableUploads") is not None else False
92
94
  })
93
95
  return _obj
94
96
 
@@ -28,7 +28,7 @@ class QuotaWithDetails(BaseModel):
28
28
  """ # noqa: E501
29
29
  pipeline_name: StrictStr = Field(description="The identifier string for the Pipeline. ", alias="pipelineName")
30
30
  quota_limit: StrictInt = Field(description="Maximum allowable quota for the pipeline ", alias="quotaLimit")
31
- quota_consumed: StrictInt = Field(description="Quota consumed by the user ", alias="quotaConsumed")
31
+ quota_consumed: StrictInt = Field(description="Quota consumed by the user or job ", alias="quotaConsumed")
32
32
  quota_units: StrictStr = Field(description="Units for pipeline quota ", alias="quotaUnits")
33
33
  __properties: ClassVar[List[str]] = ["pipelineName", "quotaLimit", "quotaConsumed", "quotaUnits"]
34
34
 
@@ -17,8 +17,8 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictStr
21
- from typing import Any, ClassVar, Dict, List
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr
21
+ from typing import Any, ClassVar, Dict, List, Optional
22
22
  from typing import Optional, Set
23
23
  from typing_extensions import Self
24
24
 
@@ -29,7 +29,8 @@ class UpdatePipelineRequestBody(BaseModel):
29
29
  workspace_billing_project: StrictStr = Field(description="The Terra billing project of the workspace to run the pipeline in. ", alias="workspaceBillingProject")
30
30
  workspace_name: StrictStr = Field(description="The name of the workspace to run the pipeline in. ", alias="workspaceName")
31
31
  tool_version: StrictStr = Field(description="An identifier string for the Pipeline Tool Version i.e. github repo tag/branch/release ", alias="toolVersion")
32
- __properties: ClassVar[List[str]] = ["workspaceBillingProject", "workspaceName", "toolVersion"]
32
+ is_hidden: Optional[StrictBool] = Field(default=None, description="Whether the pipeline is hidden. ", alias="isHidden")
33
+ __properties: ClassVar[List[str]] = ["workspaceBillingProject", "workspaceName", "toolVersion", "isHidden"]
33
34
 
34
35
  model_config = ConfigDict(
35
36
  populate_by_name=True,
@@ -84,7 +85,8 @@ class UpdatePipelineRequestBody(BaseModel):
84
85
  _obj = cls.model_validate({
85
86
  "workspaceBillingProject": obj.get("workspaceBillingProject"),
86
87
  "workspaceName": obj.get("workspaceName"),
87
- "toolVersion": obj.get("toolVersion")
88
+ "toolVersion": obj.get("toolVersion"),
89
+ "isHidden": obj.get("isHidden")
88
90
  })
89
91
  return _obj
90
92
 
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: terra-scientific-pipelines-service-api-client
3
- Version: 0.1.45
3
+ Version: 1.4.7
4
4
  Summary: Terra Scientific Pipelines Service
5
5
  Home-page:
6
6
  Author: OpenAPI Generator community
@@ -1,44 +1,47 @@
1
- teaspoons_client/__init__.py,sha256=MkpE5FZ_Ef9oMzUWyyNb48MdiTE-CLkqLuKA5fhvx-Y,3227
2
- teaspoons_client/api_client.py,sha256=914B_rAyCOFbr6zzdfKFPWMOzzKy86a5FJcWGh46kFo,27535
1
+ teaspoons_client/__init__.py,sha256=0h4irX1JM3rkan-GbkRwtrz3BmttgSneqBSMOrvOzTQ,3471
2
+ teaspoons_client/api_client.py,sha256=UHa7rfmIdUNlwupk-jPqDaLUOSMm78zMm0l225mJ3Mo,27534
3
3
  teaspoons_client/api_response.py,sha256=eMxw1mpmJcoGZ3gs9z6jM4oYoZ10Gjk333s9sKxGv7s,652
4
- teaspoons_client/configuration.py,sha256=PBcxHSajcnnrj8OSmCtVG6nRdfbhsR1WFVnPRSu8iX4,15585
4
+ teaspoons_client/configuration.py,sha256=aYcvl3jtAXMjy82gV2s8Ay2cD_2CJ9Jf7YvJCodnsGc,15584
5
5
  teaspoons_client/exceptions.py,sha256=54himL4zduna12UfdUqGb8LEVunPChzEvjvPw0DjWjk,5999
6
6
  teaspoons_client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
7
  teaspoons_client/rest.py,sha256=wRFTSvE7v-UjFP1_9oozGWnt8ERYW-PReLkFJZHiWYI,9441
8
8
  teaspoons_client/api/__init__.py,sha256=j4nfxEv5WV8rGkUs8vl0-ZGilqzKUPZfFV_FGq0cg_c,385
9
9
  teaspoons_client/api/admin_api.py,sha256=pt0mjcEAAnAqtgJpOuKa8LwYWX9I_l2Iv6Un3Y2goIE,50794
10
10
  teaspoons_client/api/jobs_api.py,sha256=mjRoBLpaluOW3lEaUT9mJNOs2HGTWG1kaVBZ3Al9r4I,23054
11
- teaspoons_client/api/pipeline_runs_api.py,sha256=rCtcJWw5Jen1uJva-ZltgVFhvMzY0wzfCVNRXc3zCS8,46448
11
+ teaspoons_client/api/pipeline_runs_api.py,sha256=zp0Nuh_XHCzR54DoV-egeg7Jah2Ydb23YMo3VvafL8o,60475
12
12
  teaspoons_client/api/pipelines_api.py,sha256=9PZ_qSMnZK4bbO-oCxLub73KJ7kLxanjkMtjXMjUOGA,22868
13
13
  teaspoons_client/api/public_api.py,sha256=cYrfhy7epadJPWvXO7xvjhyNRH72bKVXtUmjefezbl0,19743
14
14
  teaspoons_client/api/quotas_api.py,sha256=fU2ZE0B-5ELvkNdXHTWCw0asfLDNK4WetlKVvpWETmI,11862
15
- teaspoons_client/models/__init__.py,sha256=RkuzKPGkKpqd0tn-M5JMnedpVKv2cNnkFt36Dd9mfug,2327
16
- teaspoons_client/models/admin_pipeline.py,sha256=mBrSi3XCGifa2ZF02SdSzoCjfsqoXerimwlqkC6yHAc,4551
17
- teaspoons_client/models/admin_quota.py,sha256=X0Pll_9JWs1VmmElic8m7-pN6PCIRnxc1nyYyWjlK0w,3245
15
+ teaspoons_client/models/__init__.py,sha256=RKny69fz47PKhUgVGaM5aNq20LIuMw5MXDeHQMe-AZ8,2572
16
+ teaspoons_client/models/admin_pipeline.py,sha256=cLHInpyeHq6xhxo0FyHkSLUwT4_H2rVyLZJNPg7osNU,4720
17
+ teaspoons_client/models/admin_quota.py,sha256=havkt2BGtU9zr1mSAiFidyCGjtVbJC4Jr2_f9e3vWWw,3252
18
18
  teaspoons_client/models/async_pipeline_run_response.py,sha256=c_Nj3tC41y2G0pqvVwzKn_bVE6mgA2h_Aisp6315zSE,3899
19
19
  teaspoons_client/models/error_report.py,sha256=3IsEF07EPxdcMSPCMW4yE1pXydE8EHmlIBYVScvXyXs,2714
20
20
  teaspoons_client/models/get_jobs_response.py,sha256=Vdz0yG4q4TjbkLuyI13xaabR6Qn_nF3LNxn04qjRPl8,3388
21
21
  teaspoons_client/models/get_pipeline_details_request_body.py,sha256=WzO6Ws8ypES4thkALyO0wGiOCwnWvidZCAcqxEfi0Zc,2797
22
- teaspoons_client/models/get_pipeline_runs_response.py,sha256=xX4XMQZazwYRrFtx-PWo54JtfCYG1UhbDU9D9wyQ9Vc,3252
22
+ teaspoons_client/models/get_pipeline_runs_response.py,sha256=-Tfa9bZyh_qOSgsNcKAZjZ0nKXeeRc3kVOzrALvNQlE,3415
23
+ teaspoons_client/models/get_pipeline_runs_response_v2.py,sha256=DSiEj8eFSnBQcg33oQfrsbzTdTbnNgJwhKT7NKrq0Gc,3275
23
24
  teaspoons_client/models/get_pipelines_result.py,sha256=kCeOtwA_PQ2nUFNpg5xw14oUsfh1s-yA4ccrDHTIywA,3057
24
25
  teaspoons_client/models/job_control.py,sha256=PkTmAKmm6JXxu7EUfa02UNdBaxoZvo0v0TRsHVdRTM0,2551
25
26
  teaspoons_client/models/job_report.py,sha256=q5ijrPgVmGqXjrTZKzEyOswUlWKsMD6v-oTFDUUdMRg,3974
26
27
  teaspoons_client/models/job_result.py,sha256=WWZRoqmTuh5ZP9ugMENGZUx5zrzADHx9O0m2Bhh--yg,3337
27
28
  teaspoons_client/models/pipeline.py,sha256=KiEoZb6w9MMTAr1-Scr70XBNDr7eox69g9ZLa8ORRLE,3224
28
- teaspoons_client/models/pipeline_run.py,sha256=g2ZyCAa9FYFAybyGtiGZQXSgW_EBoIbykC8q6or4MTU,3622
29
- teaspoons_client/models/pipeline_run_report.py,sha256=ul4o41vBFVLAiLyHxaToqnsVdXQRo16wEY8V5rjaMP8,3636
30
- teaspoons_client/models/pipeline_user_provided_input_definition.py,sha256=b1W1Ja9PnaEjZHV3MoW1ylisPqnSwFO9bVXrkySOzqQ,3252
31
- teaspoons_client/models/pipeline_with_details.py,sha256=YcihzByz3nk6z7pnPDHYSN7Qm2iuT98Yrit_b37qdao,4147
32
- teaspoons_client/models/prepare_pipeline_run_request_body.py,sha256=w9vX95YfdBM26oNM06LiiyWWVz_WVl6UCBxnfJTTM10,3558
29
+ teaspoons_client/models/pipeline_output_definition.py,sha256=9vGjS4sSqSnIJl7yQbkP1NpzD6z34uDv3X2u9Q1U-3M,3153
30
+ teaspoons_client/models/pipeline_quota.py,sha256=jKXNhWM5gNKMwqOxAkQ0skpKSL2Jb1Ou8xNwtAlPWS0,3183
31
+ teaspoons_client/models/pipeline_run.py,sha256=a5Ocmi70FhFWU2ho0T4j6keM6LlSqfQlwBffBinOt6o,4328
32
+ teaspoons_client/models/pipeline_run_report.py,sha256=U_iDIRq-BjhYNqWmRztcWyozuJLtVoWrdBlU_T8mbug,3843
33
+ teaspoons_client/models/pipeline_user_provided_input_definition.py,sha256=eqdY1dQhegTDoKrjLAZQs8SBwiMKe048w7TFlnGtudM,4273
34
+ teaspoons_client/models/pipeline_with_details.py,sha256=yObiGAV_vIp6rvMZ1pPK-ieaxDkWfI_mVsuzWn-4lAc,5309
35
+ teaspoons_client/models/prepare_pipeline_run_request_body.py,sha256=mW6L2AWwt-h4MRd7sMoo1GmePf19JRIFpO6ltDO_548,3897
33
36
  teaspoons_client/models/prepare_pipeline_run_response.py,sha256=1lSm1DAgTfPlBIEXkhnciAgMBY0eC3sjlEEJOY7MtyA,2890
34
- teaspoons_client/models/quota_with_details.py,sha256=wO1xczv8PxCIEs_1r9Uz5BuVdm1nld1SfvpIJNB2how,3225
37
+ teaspoons_client/models/quota_with_details.py,sha256=04dsaUX3U04nme7loG3EwJHLD0BJmCcMXTpPcOnb5tQ,3232
35
38
  teaspoons_client/models/start_pipeline_run_request_body.py,sha256=l5UJEXac-WLXDi4tAgMJpFZcIIWuhsKuKHQc0ihheGE,2959
36
39
  teaspoons_client/models/system_status.py,sha256=615Ol6vBFowfewWesLeQe6aljaKMXIZb1rgWxt5FNsg,3305
37
40
  teaspoons_client/models/system_status_systems_value.py,sha256=lKuq0aDpRne858ta4gvSZL7JMqc7V3TJcVUmj9-OgOo,2675
38
- teaspoons_client/models/update_pipeline_request_body.py,sha256=DJeqxOAwDQdQDApDQdGbASbDtsb2hqRSfuV1F7yrL6o,3232
41
+ teaspoons_client/models/update_pipeline_request_body.py,sha256=zU331KvKJn6-GAs0aMNWhIuy9UYWvigpEke32bhNrCM,3435
39
42
  teaspoons_client/models/update_quota_limit_request_body.py,sha256=sOCNcTbsdTJisAn9YxHMIWUvm_UrxV1HZ5EziIUOgIk,2731
40
43
  teaspoons_client/models/version_properties.py,sha256=pnx1pduz4vnw-wx_sdASU_-zRqE1wf3JdNm4OLDJ2i8,2888
41
- terra_scientific_pipelines_service_api_client-0.1.45.dist-info/METADATA,sha256=3NCoFI_snh5Klij0JofWuzi1StWUAxIbZzH0b9A-V3s,740
42
- terra_scientific_pipelines_service_api_client-0.1.45.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
43
- terra_scientific_pipelines_service_api_client-0.1.45.dist-info/top_level.txt,sha256=DZYs7jBZ-_bWvnXrtK1TbtfhltgkuPWTRo1Ei7Uv9Jc,17
44
- terra_scientific_pipelines_service_api_client-0.1.45.dist-info/RECORD,,
44
+ terra_scientific_pipelines_service_api_client-1.4.7.dist-info/METADATA,sha256=0q9msNN2GwQyfStqKvuifq-0qrEKb78ZMWqw7MJrjE4,739
45
+ terra_scientific_pipelines_service_api_client-1.4.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
46
+ terra_scientific_pipelines_service_api_client-1.4.7.dist-info/top_level.txt,sha256=DZYs7jBZ-_bWvnXrtK1TbtfhltgkuPWTRo1Ei7Uv9Jc,17
47
+ terra_scientific_pipelines_service_api_client-1.4.7.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.2)
2
+ Generator: setuptools (80.9.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5