cosmotech-api 3.1.0__py3-none-any.whl → 3.1.1__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.

Potentially problematic release.


This version of cosmotech-api might be problematic. Click here for more details.

Files changed (243) hide show
  1. cosmotech_api/__init__.py +1 -1
  2. cosmotech_api/api/connector_api.py +1 -1
  3. cosmotech_api/api/dataset_api.py +1 -1
  4. cosmotech_api/api/organization_api.py +1 -1
  5. cosmotech_api/api/run_api.py +1 -1
  6. cosmotech_api/api/runner_api.py +1 -1
  7. cosmotech_api/api/scenario_api.py +1 -1
  8. cosmotech_api/api/scenariorun_api.py +1 -1
  9. cosmotech_api/api/scenariorunresult_api.py +1 -1
  10. cosmotech_api/api/solution_api.py +1 -1
  11. cosmotech_api/api/twingraph_api.py +1 -1
  12. cosmotech_api/api/validator_api.py +1 -1
  13. cosmotech_api/api/workspace_api.py +1 -1
  14. cosmotech_api/api_client.py +1 -1
  15. cosmotech_api/api_response.py +21 -0
  16. cosmotech_api/apis/__init__.py +2 -0
  17. cosmotech_api/configuration.py +2 -2
  18. cosmotech_api/exceptions.py +1 -1
  19. cosmotech_api/model/component_role_permissions.py +1 -1
  20. cosmotech_api/model/connector.py +1 -1
  21. cosmotech_api/model/connector_parameter.py +1 -1
  22. cosmotech_api/model/connector_parameter_group.py +1 -1
  23. cosmotech_api/model/container_resource_size_info.py +1 -1
  24. cosmotech_api/model/container_resource_sizing.py +1 -1
  25. cosmotech_api/model/dataset.py +9 -7
  26. cosmotech_api/model/dataset_access_control.py +1 -1
  27. cosmotech_api/model/dataset_compatibility.py +1 -1
  28. cosmotech_api/model/dataset_connector.py +1 -1
  29. cosmotech_api/model/dataset_copy_parameters.py +1 -1
  30. cosmotech_api/model/dataset_role.py +1 -1
  31. cosmotech_api/model/dataset_search.py +1 -1
  32. cosmotech_api/model/dataset_security.py +1 -1
  33. cosmotech_api/model/dataset_source_type.py +6 -5
  34. cosmotech_api/model/dataset_twin_graph_hash.py +1 -1
  35. cosmotech_api/model/dataset_twin_graph_info.py +1 -1
  36. cosmotech_api/model/dataset_twin_graph_query.py +1 -1
  37. cosmotech_api/model/delete_historical_data.py +1 -1
  38. cosmotech_api/model/file_upload_metadata.py +1 -1
  39. cosmotech_api/model/file_upload_validation.py +1 -1
  40. cosmotech_api/model/graph_properties.py +1 -1
  41. cosmotech_api/model/organization.py +1 -1
  42. cosmotech_api/model/organization_access_control.py +1 -1
  43. cosmotech_api/model/organization_role.py +1 -1
  44. cosmotech_api/model/organization_security.py +1 -1
  45. cosmotech_api/model/organization_service.py +1 -1
  46. cosmotech_api/model/organization_services.py +1 -1
  47. cosmotech_api/model/resource_size_info.py +1 -1
  48. cosmotech_api/model/run.py +1 -1
  49. cosmotech_api/model/run_container.py +1 -1
  50. cosmotech_api/model/run_container_artifact.py +1 -1
  51. cosmotech_api/model/run_container_logs.py +1 -1
  52. cosmotech_api/model/run_logs.py +1 -1
  53. cosmotech_api/model/run_resource_requested.py +1 -1
  54. cosmotech_api/model/run_search.py +1 -1
  55. cosmotech_api/model/run_start_containers.py +1 -1
  56. cosmotech_api/model/run_state.py +1 -1
  57. cosmotech_api/model/run_status.py +1 -1
  58. cosmotech_api/model/run_status_node.py +1 -1
  59. cosmotech_api/model/run_template.py +1 -1
  60. cosmotech_api/model/run_template_handler_id.py +1 -1
  61. cosmotech_api/model/run_template_orchestrator.py +1 -1
  62. cosmotech_api/model/run_template_parameter.py +1 -1
  63. cosmotech_api/model/run_template_parameter_group.py +1 -1
  64. cosmotech_api/model/run_template_parameter_value.py +1 -1
  65. cosmotech_api/model/run_template_resource_sizing.py +1 -1
  66. cosmotech_api/model/run_template_step_source.py +1 -1
  67. cosmotech_api/model/runner.py +1 -1
  68. cosmotech_api/model/runner_access_control.py +1 -1
  69. cosmotech_api/model/runner_changed_parameter_value.py +1 -1
  70. cosmotech_api/model/runner_comparison_result.py +1 -1
  71. cosmotech_api/model/runner_data_download_info.py +1 -1
  72. cosmotech_api/model/runner_data_download_job.py +1 -1
  73. cosmotech_api/model/runner_job_state.py +1 -1
  74. cosmotech_api/model/runner_last_run.py +1 -1
  75. cosmotech_api/model/runner_resource_sizing.py +1 -1
  76. cosmotech_api/model/runner_role.py +1 -1
  77. cosmotech_api/model/runner_run_template_parameter_value.py +1 -1
  78. cosmotech_api/model/runner_security.py +1 -1
  79. cosmotech_api/model/runner_validation_status.py +1 -1
  80. cosmotech_api/model/scenario.py +1 -1
  81. cosmotech_api/model/scenario_access_control.py +1 -1
  82. cosmotech_api/model/scenario_changed_parameter_value.py +1 -1
  83. cosmotech_api/model/scenario_comparison_result.py +1 -1
  84. cosmotech_api/model/scenario_data_download_info.py +1 -1
  85. cosmotech_api/model/scenario_data_download_job.py +1 -1
  86. cosmotech_api/model/scenario_job_state.py +1 -1
  87. cosmotech_api/model/scenario_last_run.py +1 -1
  88. cosmotech_api/model/scenario_resource_sizing.py +1 -1
  89. cosmotech_api/model/scenario_role.py +1 -1
  90. cosmotech_api/model/scenario_run.py +1 -1
  91. cosmotech_api/model/scenario_run_container.py +1 -1
  92. cosmotech_api/model/scenario_run_container_artifact.py +1 -1
  93. cosmotech_api/model/scenario_run_container_logs.py +1 -1
  94. cosmotech_api/model/scenario_run_logs.py +1 -1
  95. cosmotech_api/model/scenario_run_resource_requested.py +1 -1
  96. cosmotech_api/model/scenario_run_result.py +1 -1
  97. cosmotech_api/model/scenario_run_search.py +1 -1
  98. cosmotech_api/model/scenario_run_start_containers.py +1 -1
  99. cosmotech_api/model/scenario_run_state.py +1 -1
  100. cosmotech_api/model/scenario_run_status.py +1 -1
  101. cosmotech_api/model/scenario_run_status_node.py +1 -1
  102. cosmotech_api/model/scenario_run_template_parameter_value.py +1 -1
  103. cosmotech_api/model/scenario_security.py +1 -1
  104. cosmotech_api/model/scenario_validation_status.py +1 -1
  105. cosmotech_api/model/solution.py +5 -1
  106. cosmotech_api/model/solution_access_control.py +1 -1
  107. cosmotech_api/model/solution_role.py +1 -1
  108. cosmotech_api/model/solution_security.py +1 -1
  109. cosmotech_api/model/source_info.py +1 -1
  110. cosmotech_api/model/sub_dataset_graph_query.py +1 -1
  111. cosmotech_api/model/translated_labels.py +1 -1
  112. cosmotech_api/model/twin_graph_batch_result.py +1 -1
  113. cosmotech_api/model/twin_graph_hash.py +1 -1
  114. cosmotech_api/model/twin_graph_import.py +1 -1
  115. cosmotech_api/model/twin_graph_import_info.py +1 -1
  116. cosmotech_api/model/twin_graph_query.py +1 -1
  117. cosmotech_api/model/validator.py +1 -1
  118. cosmotech_api/model/validator_run.py +1 -1
  119. cosmotech_api/model/workspace.py +1 -1
  120. cosmotech_api/model/workspace_access_control.py +1 -1
  121. cosmotech_api/model/workspace_file.py +1 -1
  122. cosmotech_api/model/workspace_role.py +1 -1
  123. cosmotech_api/model/workspace_secret.py +1 -1
  124. cosmotech_api/model/workspace_security.py +1 -1
  125. cosmotech_api/model/workspace_solution.py +1 -1
  126. cosmotech_api/model/workspace_web_app.py +1 -1
  127. cosmotech_api/model_utils.py +1 -1
  128. cosmotech_api/models/__init__.py +24 -0
  129. cosmotech_api/models/component_role_permissions.py +90 -0
  130. cosmotech_api/models/connector.py +135 -0
  131. cosmotech_api/models/connector_parameter.py +98 -0
  132. cosmotech_api/models/connector_parameter_group.py +100 -0
  133. cosmotech_api/models/container_resource_size_info.py +90 -0
  134. cosmotech_api/models/container_resource_sizing.py +97 -0
  135. cosmotech_api/models/dataset.py +195 -0
  136. cosmotech_api/models/dataset_access_control.py +90 -0
  137. cosmotech_api/models/dataset_compatibility.py +92 -0
  138. cosmotech_api/models/dataset_connector.py +94 -0
  139. cosmotech_api/models/dataset_copy_parameters.py +92 -0
  140. cosmotech_api/models/dataset_role.py +88 -0
  141. cosmotech_api/models/dataset_search.py +88 -0
  142. cosmotech_api/models/dataset_security.py +98 -0
  143. cosmotech_api/models/dataset_source_type.py +42 -0
  144. cosmotech_api/models/dataset_twin_graph_hash.py +88 -0
  145. cosmotech_api/models/dataset_twin_graph_info.py +92 -0
  146. cosmotech_api/models/dataset_twin_graph_query.py +88 -0
  147. cosmotech_api/models/delete_historical_data.py +92 -0
  148. cosmotech_api/models/file_upload_metadata.py +90 -0
  149. cosmotech_api/models/file_upload_validation.py +105 -0
  150. cosmotech_api/models/graph_properties.py +96 -0
  151. cosmotech_api/models/organization.py +108 -0
  152. cosmotech_api/models/organization_access_control.py +90 -0
  153. cosmotech_api/models/organization_role.py +88 -0
  154. cosmotech_api/models/organization_security.py +98 -0
  155. cosmotech_api/models/organization_service.py +96 -0
  156. cosmotech_api/models/organization_services.py +99 -0
  157. cosmotech_api/models/resource_size_info.py +90 -0
  158. cosmotech_api/models/run.py +167 -0
  159. cosmotech_api/models/run_container.py +126 -0
  160. cosmotech_api/models/run_container_artifact.py +90 -0
  161. cosmotech_api/models/run_container_logs.py +102 -0
  162. cosmotech_api/models/run_logs.py +107 -0
  163. cosmotech_api/models/run_resource_requested.py +90 -0
  164. cosmotech_api/models/run_search.py +112 -0
  165. cosmotech_api/models/run_start_containers.py +104 -0
  166. cosmotech_api/models/run_state.py +40 -0
  167. cosmotech_api/models/run_status.py +123 -0
  168. cosmotech_api/models/run_status_node.py +116 -0
  169. cosmotech_api/models/run_template.py +164 -0
  170. cosmotech_api/models/run_template_handler_id.py +42 -0
  171. cosmotech_api/models/run_template_orchestrator.py +38 -0
  172. cosmotech_api/models/run_template_parameter.py +102 -0
  173. cosmotech_api/models/run_template_parameter_group.py +98 -0
  174. cosmotech_api/models/run_template_parameter_value.py +94 -0
  175. cosmotech_api/models/run_template_resource_sizing.py +97 -0
  176. cosmotech_api/models/run_template_step_source.py +40 -0
  177. cosmotech_api/models/runner.py +188 -0
  178. cosmotech_api/models/runner_access_control.py +90 -0
  179. cosmotech_api/models/runner_changed_parameter_value.py +102 -0
  180. cosmotech_api/models/runner_comparison_result.py +106 -0
  181. cosmotech_api/models/runner_data_download_info.py +93 -0
  182. cosmotech_api/models/runner_data_download_job.py +90 -0
  183. cosmotech_api/models/runner_job_state.py +42 -0
  184. cosmotech_api/models/runner_last_run.py +94 -0
  185. cosmotech_api/models/runner_parent_last_run.py +94 -0
  186. cosmotech_api/models/runner_resource_sizing.py +97 -0
  187. cosmotech_api/models/runner_role.py +88 -0
  188. cosmotech_api/models/runner_root_last_run.py +94 -0
  189. cosmotech_api/models/runner_run_template_parameter_value.py +96 -0
  190. cosmotech_api/models/runner_security.py +98 -0
  191. cosmotech_api/models/runner_validation_status.py +40 -0
  192. cosmotech_api/models/scenario.py +186 -0
  193. cosmotech_api/models/scenario_access_control.py +90 -0
  194. cosmotech_api/models/scenario_changed_parameter_value.py +102 -0
  195. cosmotech_api/models/scenario_comparison_result.py +106 -0
  196. cosmotech_api/models/scenario_data_download_info.py +93 -0
  197. cosmotech_api/models/scenario_data_download_job.py +90 -0
  198. cosmotech_api/models/scenario_job_state.py +42 -0
  199. cosmotech_api/models/scenario_last_run.py +94 -0
  200. cosmotech_api/models/scenario_resource_sizing.py +97 -0
  201. cosmotech_api/models/scenario_role.py +88 -0
  202. cosmotech_api/models/scenario_run.py +179 -0
  203. cosmotech_api/models/scenario_run_container.py +126 -0
  204. cosmotech_api/models/scenario_run_container_artifact.py +90 -0
  205. cosmotech_api/models/scenario_run_container_logs.py +102 -0
  206. cosmotech_api/models/scenario_run_logs.py +107 -0
  207. cosmotech_api/models/scenario_run_resource_requested.py +90 -0
  208. cosmotech_api/models/scenario_run_result.py +90 -0
  209. cosmotech_api/models/scenario_run_search.py +112 -0
  210. cosmotech_api/models/scenario_run_start_containers.py +104 -0
  211. cosmotech_api/models/scenario_run_state.py +42 -0
  212. cosmotech_api/models/scenario_run_status.py +119 -0
  213. cosmotech_api/models/scenario_run_status_node.py +116 -0
  214. cosmotech_api/models/scenario_run_template_parameter_value.py +96 -0
  215. cosmotech_api/models/scenario_security.py +98 -0
  216. cosmotech_api/models/scenario_validation_status.py +40 -0
  217. cosmotech_api/models/solution.py +154 -0
  218. cosmotech_api/models/solution_access_control.py +90 -0
  219. cosmotech_api/models/solution_role.py +88 -0
  220. cosmotech_api/models/solution_security.py +98 -0
  221. cosmotech_api/models/source_info.py +94 -0
  222. cosmotech_api/models/sub_dataset_graph_query.py +94 -0
  223. cosmotech_api/models/twin_graph_batch_result.py +92 -0
  224. cosmotech_api/models/twin_graph_hash.py +88 -0
  225. cosmotech_api/models/twin_graph_query.py +90 -0
  226. cosmotech_api/models/validator.py +106 -0
  227. cosmotech_api/models/validator_run.py +126 -0
  228. cosmotech_api/models/workspace.py +142 -0
  229. cosmotech_api/models/workspace_access_control.py +90 -0
  230. cosmotech_api/models/workspace_file.py +88 -0
  231. cosmotech_api/models/workspace_role.py +88 -0
  232. cosmotech_api/models/workspace_secret.py +88 -0
  233. cosmotech_api/models/workspace_security.py +98 -0
  234. cosmotech_api/models/workspace_solution.py +92 -0
  235. cosmotech_api/models/workspace_web_app.py +92 -0
  236. cosmotech_api/py.typed +0 -0
  237. cosmotech_api/rest.py +1 -1
  238. {cosmotech_api-3.1.0.dist-info → cosmotech_api-3.1.1.dist-info}/METADATA +1 -1
  239. cosmotech_api-3.1.1.dist-info/RECORD +251 -0
  240. {cosmotech_api-3.1.0.dist-info → cosmotech_api-3.1.1.dist-info}/WHEEL +1 -1
  241. cosmotech_api-3.1.0.dist-info/RECORD +0 -142
  242. {cosmotech_api-3.1.0.dist-info → cosmotech_api-3.1.1.dist-info}/LICENSE +0 -0
  243. {cosmotech_api-3.1.0.dist-info → cosmotech_api-3.1.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,104 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from cosmotech_api.models.scenario_run_container import ScenarioRunContainer
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class ScenarioRunStartContainers(BaseModel):
28
+ """
29
+ the parameters to run directly containers
30
+ """ # noqa: E501
31
+ generate_name: Optional[StrictStr] = Field(default=None, description="the base name for workflow name generation", alias="generateName")
32
+ csm_simulation_id: StrictStr = Field(description="Cosmo Tech Simulation Run Id", alias="csmSimulationId")
33
+ node_label: Optional[StrictStr] = Field(default=None, description="the node label request", alias="nodeLabel")
34
+ labels: Optional[Dict[str, StrictStr]] = Field(default=None, description="the workflow labels")
35
+ containers: List[ScenarioRunContainer] = Field(description="the containerslist")
36
+ __properties: ClassVar[List[str]] = ["generateName", "csmSimulationId", "nodeLabel", "labels", "containers"]
37
+
38
+ model_config = {
39
+ "populate_by_name": True,
40
+ "validate_assignment": True,
41
+ "protected_namespaces": (),
42
+ }
43
+
44
+
45
+ def to_str(self) -> str:
46
+ """Returns the string representation of the model using alias"""
47
+ return pprint.pformat(self.model_dump(by_alias=True))
48
+
49
+ def to_json(self) -> str:
50
+ """Returns the JSON representation of the model using alias"""
51
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
52
+ return json.dumps(self.to_dict())
53
+
54
+ @classmethod
55
+ def from_json(cls, json_str: str) -> Optional[Self]:
56
+ """Create an instance of ScenarioRunStartContainers from a JSON string"""
57
+ return cls.from_dict(json.loads(json_str))
58
+
59
+ def to_dict(self) -> Dict[str, Any]:
60
+ """Return the dictionary representation of the model using alias.
61
+
62
+ This has the following differences from calling pydantic's
63
+ `self.model_dump(by_alias=True)`:
64
+
65
+ * `None` is only added to the output dict for nullable fields that
66
+ were set at model initialization. Other fields with value `None`
67
+ are ignored.
68
+ """
69
+ excluded_fields: Set[str] = set([
70
+ ])
71
+
72
+ _dict = self.model_dump(
73
+ by_alias=True,
74
+ exclude=excluded_fields,
75
+ exclude_none=True,
76
+ )
77
+ # override the default output from pydantic by calling `to_dict()` of each item in containers (list)
78
+ _items = []
79
+ if self.containers:
80
+ for _item in self.containers:
81
+ if _item:
82
+ _items.append(_item.to_dict())
83
+ _dict['containers'] = _items
84
+ return _dict
85
+
86
+ @classmethod
87
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
88
+ """Create an instance of ScenarioRunStartContainers from a dict"""
89
+ if obj is None:
90
+ return None
91
+
92
+ if not isinstance(obj, dict):
93
+ return cls.model_validate(obj)
94
+
95
+ _obj = cls.model_validate({
96
+ "generateName": obj.get("generateName"),
97
+ "csmSimulationId": obj.get("csmSimulationId"),
98
+ "nodeLabel": obj.get("nodeLabel"),
99
+ "labels": obj.get("labels"),
100
+ "containers": [ScenarioRunContainer.from_dict(_item) for _item in obj["containers"]] if obj.get("containers") is not None else None
101
+ })
102
+ return _obj
103
+
104
+
@@ -0,0 +1,42 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import json
18
+ from enum import Enum
19
+ from typing_extensions import Self
20
+
21
+
22
+ class ScenarioRunState(str, Enum):
23
+ """
24
+ the ScenarioRun end-to-end state
25
+ """
26
+
27
+ """
28
+ allowed enum values
29
+ """
30
+ RUNNING = 'Running'
31
+ SUCCESSFUL = 'Successful'
32
+ FAILED = 'Failed'
33
+ UNKNOWN = 'Unknown'
34
+ DATAINGESTIONINPROGRESS = 'DataIngestionInProgress'
35
+ DATAINGESTIONFAILURE = 'DataIngestionFailure'
36
+
37
+ @classmethod
38
+ def from_json(cls, json_str: str) -> Self:
39
+ """Create an instance of ScenarioRunState from a JSON string"""
40
+ return cls(json.loads(json_str))
41
+
42
+
@@ -0,0 +1,119 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictInt, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from cosmotech_api.models.scenario_run_state import ScenarioRunState
24
+ from cosmotech_api.models.scenario_run_status_node import ScenarioRunStatusNode
25
+ from typing import Optional, Set
26
+ from typing_extensions import Self
27
+
28
+ class ScenarioRunStatus(BaseModel):
29
+ """
30
+ a ScenarioRun status
31
+ """ # noqa: E501
32
+ id: Optional[StrictStr] = Field(default=None, description="the ScenarioRun id")
33
+ organization_id: Optional[StrictStr] = Field(default=None, description="the ScenarioRun id", alias="organizationId")
34
+ workflow_id: Optional[StrictStr] = Field(default=None, description="the Cosmo Tech compute cluster Argo Workflow Id to search", alias="workflowId")
35
+ workflow_name: Optional[StrictStr] = Field(default=None, description="the Cosmo Tech compute cluster Argo Workflow Name", alias="workflowName")
36
+ start_time: Optional[StrictStr] = Field(default=None, description="the ScenarioRun start Date Time", alias="startTime")
37
+ end_time: Optional[StrictStr] = Field(default=None, description="the ScenarioRun end Date Time", alias="endTime")
38
+ phase: Optional[StrictStr] = Field(default=None, description="high-level summary of where the workflow is in its lifecycle")
39
+ progress: Optional[StrictStr] = Field(default=None, description="progress to completion")
40
+ message: Optional[StrictStr] = Field(default=None, description="a human readable message indicating details about why the workflow is in this condition")
41
+ estimated_duration: Optional[StrictInt] = Field(default=None, description="estimatedDuration in seconds", alias="estimatedDuration")
42
+ nodes: Optional[List[ScenarioRunStatusNode]] = Field(default=None, description="status of ScenarioRun nodes")
43
+ state: Optional[ScenarioRunState] = None
44
+ __properties: ClassVar[List[str]] = ["id", "organizationId", "workflowId", "workflowName", "startTime", "endTime", "phase", "progress", "message", "estimatedDuration", "nodes", "state"]
45
+
46
+ model_config = {
47
+ "populate_by_name": True,
48
+ "validate_assignment": True,
49
+ "protected_namespaces": (),
50
+ }
51
+
52
+
53
+ def to_str(self) -> str:
54
+ """Returns the string representation of the model using alias"""
55
+ return pprint.pformat(self.model_dump(by_alias=True))
56
+
57
+ def to_json(self) -> str:
58
+ """Returns the JSON representation of the model using alias"""
59
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
60
+ return json.dumps(self.to_dict())
61
+
62
+ @classmethod
63
+ def from_json(cls, json_str: str) -> Optional[Self]:
64
+ """Create an instance of ScenarioRunStatus from a JSON string"""
65
+ return cls.from_dict(json.loads(json_str))
66
+
67
+ def to_dict(self) -> Dict[str, Any]:
68
+ """Return the dictionary representation of the model using alias.
69
+
70
+ This has the following differences from calling pydantic's
71
+ `self.model_dump(by_alias=True)`:
72
+
73
+ * `None` is only added to the output dict for nullable fields that
74
+ were set at model initialization. Other fields with value `None`
75
+ are ignored.
76
+ """
77
+ excluded_fields: Set[str] = set([
78
+ ])
79
+
80
+ _dict = self.model_dump(
81
+ by_alias=True,
82
+ exclude=excluded_fields,
83
+ exclude_none=True,
84
+ )
85
+ # override the default output from pydantic by calling `to_dict()` of each item in nodes (list)
86
+ _items = []
87
+ if self.nodes:
88
+ for _item in self.nodes:
89
+ if _item:
90
+ _items.append(_item.to_dict())
91
+ _dict['nodes'] = _items
92
+ return _dict
93
+
94
+ @classmethod
95
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
96
+ """Create an instance of ScenarioRunStatus from a dict"""
97
+ if obj is None:
98
+ return None
99
+
100
+ if not isinstance(obj, dict):
101
+ return cls.model_validate(obj)
102
+
103
+ _obj = cls.model_validate({
104
+ "id": obj.get("id"),
105
+ "organizationId": obj.get("organizationId"),
106
+ "workflowId": obj.get("workflowId"),
107
+ "workflowName": obj.get("workflowName"),
108
+ "startTime": obj.get("startTime"),
109
+ "endTime": obj.get("endTime"),
110
+ "phase": obj.get("phase"),
111
+ "progress": obj.get("progress"),
112
+ "message": obj.get("message"),
113
+ "estimatedDuration": obj.get("estimatedDuration"),
114
+ "nodes": [ScenarioRunStatusNode.from_dict(_item) for _item in obj["nodes"]] if obj.get("nodes") is not None else None,
115
+ "state": obj.get("state")
116
+ })
117
+ return _obj
118
+
119
+
@@ -0,0 +1,116 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictInt, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from cosmotech_api.models.scenario_run_resource_requested import ScenarioRunResourceRequested
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class ScenarioRunStatusNode(BaseModel):
28
+ """
29
+ status of a ScenarioRun Node
30
+ """ # noqa: E501
31
+ id: Optional[StrictStr] = Field(default=None, description="the node id")
32
+ name: Optional[StrictStr] = Field(default=None, description="the node unique name")
33
+ container_name: Optional[StrictStr] = Field(default=None, description="the ScenarioRun container name", alias="containerName")
34
+ outbound_nodes: Optional[List[StrictStr]] = Field(default=None, description="the list of outbound nodes", alias="outboundNodes")
35
+ resources_duration: Optional[ScenarioRunResourceRequested] = Field(default=None, alias="resourcesDuration")
36
+ estimated_duration: Optional[StrictInt] = Field(default=None, description="estimatedDuration in seconds", alias="estimatedDuration")
37
+ host_node_name: Optional[StrictStr] = Field(default=None, description="HostNodeName name of the Kubernetes node on which the Pod is running, if applicable", alias="hostNodeName")
38
+ message: Optional[StrictStr] = Field(default=None, description="a human readable message indicating details about why the node is in this condition")
39
+ phase: Optional[StrictStr] = Field(default=None, description="high-level summary of where the node is in its lifecycle")
40
+ progress: Optional[StrictStr] = Field(default=None, description="progress to completion")
41
+ start_time: Optional[StrictStr] = Field(default=None, description="the node start time", alias="startTime")
42
+ end_time: Optional[StrictStr] = Field(default=None, description="the node end time", alias="endTime")
43
+ __properties: ClassVar[List[str]] = ["id", "name", "containerName", "outboundNodes", "resourcesDuration", "estimatedDuration", "hostNodeName", "message", "phase", "progress", "startTime", "endTime"]
44
+
45
+ model_config = {
46
+ "populate_by_name": True,
47
+ "validate_assignment": True,
48
+ "protected_namespaces": (),
49
+ }
50
+
51
+
52
+ def to_str(self) -> str:
53
+ """Returns the string representation of the model using alias"""
54
+ return pprint.pformat(self.model_dump(by_alias=True))
55
+
56
+ def to_json(self) -> str:
57
+ """Returns the JSON representation of the model using alias"""
58
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
59
+ return json.dumps(self.to_dict())
60
+
61
+ @classmethod
62
+ def from_json(cls, json_str: str) -> Optional[Self]:
63
+ """Create an instance of ScenarioRunStatusNode from a JSON string"""
64
+ return cls.from_dict(json.loads(json_str))
65
+
66
+ def to_dict(self) -> Dict[str, Any]:
67
+ """Return the dictionary representation of the model using alias.
68
+
69
+ This has the following differences from calling pydantic's
70
+ `self.model_dump(by_alias=True)`:
71
+
72
+ * `None` is only added to the output dict for nullable fields that
73
+ were set at model initialization. Other fields with value `None`
74
+ are ignored.
75
+ * OpenAPI `readOnly` fields are excluded.
76
+ """
77
+ excluded_fields: Set[str] = set([
78
+ "outbound_nodes",
79
+ ])
80
+
81
+ _dict = self.model_dump(
82
+ by_alias=True,
83
+ exclude=excluded_fields,
84
+ exclude_none=True,
85
+ )
86
+ # override the default output from pydantic by calling `to_dict()` of resources_duration
87
+ if self.resources_duration:
88
+ _dict['resourcesDuration'] = self.resources_duration.to_dict()
89
+ return _dict
90
+
91
+ @classmethod
92
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
93
+ """Create an instance of ScenarioRunStatusNode from a dict"""
94
+ if obj is None:
95
+ return None
96
+
97
+ if not isinstance(obj, dict):
98
+ return cls.model_validate(obj)
99
+
100
+ _obj = cls.model_validate({
101
+ "id": obj.get("id"),
102
+ "name": obj.get("name"),
103
+ "containerName": obj.get("containerName"),
104
+ "outboundNodes": obj.get("outboundNodes"),
105
+ "resourcesDuration": ScenarioRunResourceRequested.from_dict(obj["resourcesDuration"]) if obj.get("resourcesDuration") is not None else None,
106
+ "estimatedDuration": obj.get("estimatedDuration"),
107
+ "hostNodeName": obj.get("hostNodeName"),
108
+ "message": obj.get("message"),
109
+ "phase": obj.get("phase"),
110
+ "progress": obj.get("progress"),
111
+ "startTime": obj.get("startTime"),
112
+ "endTime": obj.get("endTime")
113
+ })
114
+ return _obj
115
+
116
+
@@ -0,0 +1,96 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictBool, StrictStr
22
+ from typing import Any, ClassVar, Dict, List, Optional
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
25
+
26
+ class ScenarioRunTemplateParameterValue(BaseModel):
27
+ """
28
+ the value of a Solution Run Template parameter for a Scenario
29
+ """ # noqa: E501
30
+ parameter_id: StrictStr = Field(description="the parameter Id", alias="parameterId")
31
+ var_type: Optional[StrictStr] = Field(default=None, description="the parameter value type", alias="varType")
32
+ value: StrictStr = Field(description="the parameter value")
33
+ is_inherited: Optional[StrictBool] = Field(default=None, description="whether or not the value is inherited from parent or has been changed", alias="isInherited")
34
+ __properties: ClassVar[List[str]] = ["parameterId", "varType", "value", "isInherited"]
35
+
36
+ model_config = {
37
+ "populate_by_name": True,
38
+ "validate_assignment": True,
39
+ "protected_namespaces": (),
40
+ }
41
+
42
+
43
+ def to_str(self) -> str:
44
+ """Returns the string representation of the model using alias"""
45
+ return pprint.pformat(self.model_dump(by_alias=True))
46
+
47
+ def to_json(self) -> str:
48
+ """Returns the JSON representation of the model using alias"""
49
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
50
+ return json.dumps(self.to_dict())
51
+
52
+ @classmethod
53
+ def from_json(cls, json_str: str) -> Optional[Self]:
54
+ """Create an instance of ScenarioRunTemplateParameterValue from a JSON string"""
55
+ return cls.from_dict(json.loads(json_str))
56
+
57
+ def to_dict(self) -> Dict[str, Any]:
58
+ """Return the dictionary representation of the model using alias.
59
+
60
+ This has the following differences from calling pydantic's
61
+ `self.model_dump(by_alias=True)`:
62
+
63
+ * `None` is only added to the output dict for nullable fields that
64
+ were set at model initialization. Other fields with value `None`
65
+ are ignored.
66
+ * OpenAPI `readOnly` fields are excluded.
67
+ """
68
+ excluded_fields: Set[str] = set([
69
+ "var_type",
70
+ ])
71
+
72
+ _dict = self.model_dump(
73
+ by_alias=True,
74
+ exclude=excluded_fields,
75
+ exclude_none=True,
76
+ )
77
+ return _dict
78
+
79
+ @classmethod
80
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
81
+ """Create an instance of ScenarioRunTemplateParameterValue from a dict"""
82
+ if obj is None:
83
+ return None
84
+
85
+ if not isinstance(obj, dict):
86
+ return cls.model_validate(obj)
87
+
88
+ _obj = cls.model_validate({
89
+ "parameterId": obj.get("parameterId"),
90
+ "varType": obj.get("varType"),
91
+ "value": obj.get("value"),
92
+ "isInherited": obj.get("isInherited")
93
+ })
94
+ return _obj
95
+
96
+
@@ -0,0 +1,98 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import pprint
18
+ import re # noqa: F401
19
+ import json
20
+
21
+ from pydantic import BaseModel, Field, StrictStr
22
+ from typing import Any, ClassVar, Dict, List
23
+ from cosmotech_api.models.scenario_access_control import ScenarioAccessControl
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
26
+
27
+ class ScenarioSecurity(BaseModel):
28
+ """
29
+ the Scenario security information
30
+ """ # noqa: E501
31
+ default: StrictStr = Field(description="the role by default")
32
+ access_control_list: List[ScenarioAccessControl] = Field(description="the list which can access this Scenario with detailed access control information", alias="accessControlList")
33
+ __properties: ClassVar[List[str]] = ["default", "accessControlList"]
34
+
35
+ model_config = {
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 ScenarioSecurity 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
+ # override the default output from pydantic by calling `to_dict()` of each item in access_control_list (list)
75
+ _items = []
76
+ if self.access_control_list:
77
+ for _item in self.access_control_list:
78
+ if _item:
79
+ _items.append(_item.to_dict())
80
+ _dict['accessControlList'] = _items
81
+ return _dict
82
+
83
+ @classmethod
84
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
85
+ """Create an instance of ScenarioSecurity from a dict"""
86
+ if obj is None:
87
+ return None
88
+
89
+ if not isinstance(obj, dict):
90
+ return cls.model_validate(obj)
91
+
92
+ _obj = cls.model_validate({
93
+ "default": obj.get("default"),
94
+ "accessControlList": [ScenarioAccessControl.from_dict(_item) for _item in obj["accessControlList"]] if obj.get("accessControlList") is not None else None
95
+ })
96
+ return _obj
97
+
98
+
@@ -0,0 +1,40 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Cosmo Tech Platform API
5
+
6
+ Cosmo Tech Platform API
7
+
8
+ The version of the OpenAPI document: 3.1.1-SNAPSHOT
9
+ Contact: platform@cosmotech.com
10
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
11
+
12
+ Do not edit the class manually.
13
+ """ # noqa: E501
14
+
15
+
16
+ from __future__ import annotations
17
+ import json
18
+ from enum import Enum
19
+ from typing_extensions import Self
20
+
21
+
22
+ class ScenarioValidationStatus(str, Enum):
23
+ """
24
+ the validation status of the scenario
25
+ """
26
+
27
+ """
28
+ allowed enum values
29
+ """
30
+ DRAFT = 'Draft'
31
+ REJECTED = 'Rejected'
32
+ UNKNOWN = 'Unknown'
33
+ VALIDATED = 'Validated'
34
+
35
+ @classmethod
36
+ def from_json(cls, json_str: str) -> Self:
37
+ """Create an instance of ScenarioValidationStatus from a JSON string"""
38
+ return cls(json.loads(json_str))
39
+
40
+