cosmotech-api 3.2.0.post1__py3-none-any.whl → 5.0.0rc3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cosmotech_api/__init__.py +180 -130
- cosmotech_api/api/__init__.py +1 -4
- cosmotech_api/api/connector_api.py +31 -27
- cosmotech_api/api/dataset_api.py +1762 -3918
- cosmotech_api/api/meta_api.py +281 -0
- cosmotech_api/api/organization_api.py +654 -1460
- cosmotech_api/api/run_api.py +170 -817
- cosmotech_api/api/runner_api.py +688 -631
- cosmotech_api/api/scenario_api.py +141 -121
- cosmotech_api/api/scenariorun_api.py +76 -66
- cosmotech_api/api/scenariorunresult_api.py +341 -659
- cosmotech_api/api/solution_api.py +2504 -956
- cosmotech_api/api/twingraph_api.py +83 -72
- cosmotech_api/api/validator_api.py +1249 -2501
- cosmotech_api/api/workspace_api.py +835 -1658
- cosmotech_api/api_client.py +79 -33
- cosmotech_api/configuration.py +185 -48
- cosmotech_api/exceptions.py +18 -1
- cosmotech_api/model/component_role_permissions.py +1 -1
- cosmotech_api/model/connector.py +1 -1
- cosmotech_api/model/connector_parameter.py +1 -1
- cosmotech_api/model/connector_parameter_group.py +1 -1
- cosmotech_api/model/container_resource_size_info.py +1 -1
- cosmotech_api/model/container_resource_sizing.py +1 -1
- cosmotech_api/model/dataset.py +1 -1
- cosmotech_api/model/dataset_access_control.py +1 -1
- cosmotech_api/model/dataset_compatibility.py +1 -1
- cosmotech_api/model/dataset_connector.py +1 -1
- cosmotech_api/model/dataset_copy_parameters.py +1 -1
- cosmotech_api/model/dataset_role.py +1 -1
- cosmotech_api/model/dataset_search.py +1 -1
- cosmotech_api/model/dataset_security.py +1 -1
- cosmotech_api/model/dataset_source_type.py +1 -1
- cosmotech_api/model/dataset_twin_graph_hash.py +1 -1
- cosmotech_api/model/dataset_twin_graph_info.py +1 -1
- cosmotech_api/model/dataset_twin_graph_query.py +1 -1
- cosmotech_api/model/delete_historical_data.py +1 -1
- cosmotech_api/model/file_upload_metadata.py +1 -1
- cosmotech_api/model/file_upload_validation.py +1 -1
- cosmotech_api/model/graph_properties.py +1 -1
- cosmotech_api/model/organization.py +1 -1
- cosmotech_api/model/organization_access_control.py +1 -1
- cosmotech_api/model/organization_role.py +1 -1
- cosmotech_api/model/organization_security.py +1 -1
- cosmotech_api/model/organization_service.py +1 -1
- cosmotech_api/model/organization_services.py +1 -1
- cosmotech_api/model/resource_size_info.py +1 -1
- cosmotech_api/model/run.py +1 -1
- cosmotech_api/model/run_container.py +1 -1
- cosmotech_api/model/run_container_artifact.py +1 -1
- cosmotech_api/model/run_container_logs.py +1 -1
- cosmotech_api/model/run_logs.py +1 -1
- cosmotech_api/model/run_resource_requested.py +1 -1
- cosmotech_api/model/run_search.py +1 -1
- cosmotech_api/model/run_start_containers.py +1 -1
- cosmotech_api/model/run_state.py +1 -1
- cosmotech_api/model/run_status.py +1 -1
- cosmotech_api/model/run_status_node.py +1 -1
- cosmotech_api/model/run_template.py +1 -1
- cosmotech_api/model/run_template_handler_id.py +1 -1
- cosmotech_api/model/run_template_orchestrator.py +1 -1
- cosmotech_api/model/run_template_parameter.py +1 -1
- cosmotech_api/model/run_template_parameter_group.py +1 -1
- cosmotech_api/model/run_template_parameter_value.py +1 -1
- cosmotech_api/model/run_template_resource_sizing.py +1 -1
- cosmotech_api/model/run_template_step_source.py +1 -1
- cosmotech_api/model/runner.py +1 -1
- cosmotech_api/model/runner_access_control.py +1 -1
- cosmotech_api/model/runner_changed_parameter_value.py +1 -1
- cosmotech_api/model/runner_comparison_result.py +1 -1
- cosmotech_api/model/runner_data_download_info.py +1 -1
- cosmotech_api/model/runner_data_download_job.py +1 -1
- cosmotech_api/model/runner_job_state.py +1 -1
- cosmotech_api/model/runner_last_run.py +1 -1
- cosmotech_api/model/runner_resource_sizing.py +1 -1
- cosmotech_api/model/runner_role.py +1 -1
- cosmotech_api/model/runner_run_template_parameter_value.py +1 -1
- cosmotech_api/model/runner_security.py +1 -1
- cosmotech_api/model/runner_validation_status.py +1 -1
- cosmotech_api/model/scenario.py +1 -1
- cosmotech_api/model/scenario_access_control.py +1 -1
- cosmotech_api/model/scenario_changed_parameter_value.py +1 -1
- cosmotech_api/model/scenario_comparison_result.py +1 -1
- cosmotech_api/model/scenario_data_download_info.py +1 -1
- cosmotech_api/model/scenario_data_download_job.py +1 -1
- cosmotech_api/model/scenario_job_state.py +1 -1
- cosmotech_api/model/scenario_last_run.py +1 -1
- cosmotech_api/model/scenario_resource_sizing.py +1 -1
- cosmotech_api/model/scenario_role.py +1 -1
- cosmotech_api/model/scenario_run.py +1 -1
- cosmotech_api/model/scenario_run_container.py +1 -1
- cosmotech_api/model/scenario_run_container_artifact.py +1 -1
- cosmotech_api/model/scenario_run_container_logs.py +1 -1
- cosmotech_api/model/scenario_run_logs.py +1 -1
- cosmotech_api/model/scenario_run_resource_requested.py +1 -1
- cosmotech_api/model/scenario_run_result.py +1 -1
- cosmotech_api/model/scenario_run_search.py +1 -1
- cosmotech_api/model/scenario_run_start_containers.py +1 -1
- cosmotech_api/model/scenario_run_state.py +1 -1
- cosmotech_api/model/scenario_run_status.py +1 -1
- cosmotech_api/model/scenario_run_status_node.py +1 -1
- cosmotech_api/model/scenario_run_template_parameter_value.py +1 -1
- cosmotech_api/model/scenario_security.py +1 -1
- cosmotech_api/model/scenario_validation_status.py +1 -1
- cosmotech_api/model/solution.py +1 -1
- cosmotech_api/model/solution_access_control.py +1 -1
- cosmotech_api/model/solution_role.py +1 -1
- cosmotech_api/model/solution_security.py +1 -1
- cosmotech_api/model/source_info.py +1 -1
- cosmotech_api/model/sub_dataset_graph_query.py +1 -1
- cosmotech_api/model/translated_labels.py +1 -1
- cosmotech_api/model/twin_graph_batch_result.py +1 -1
- cosmotech_api/model/twin_graph_hash.py +1 -1
- cosmotech_api/model/twin_graph_query.py +1 -1
- cosmotech_api/model/validator.py +1 -1
- cosmotech_api/model/validator_run.py +1 -1
- cosmotech_api/model/workspace.py +1 -1
- cosmotech_api/model/workspace_access_control.py +1 -1
- cosmotech_api/model/workspace_file.py +1 -1
- cosmotech_api/model/workspace_role.py +1 -1
- cosmotech_api/model/workspace_secret.py +1 -1
- cosmotech_api/model/workspace_security.py +1 -1
- cosmotech_api/model/workspace_solution.py +1 -1
- cosmotech_api/model/workspace_web_app.py +1 -1
- cosmotech_api/model_utils.py +1 -1
- cosmotech_api/models/__init__.py +33 -72
- cosmotech_api/models/about_info.py +92 -0
- cosmotech_api/models/about_info_version.py +100 -0
- cosmotech_api/models/component_role_permissions.py +11 -11
- cosmotech_api/models/connector.py +12 -22
- cosmotech_api/models/connector_parameter.py +7 -7
- cosmotech_api/models/connector_parameter_group.py +10 -10
- cosmotech_api/models/container_resource_size_info.py +7 -7
- cosmotech_api/models/container_resource_sizing.py +7 -7
- cosmotech_api/models/create_info.py +103 -0
- cosmotech_api/models/created_run.py +88 -0
- cosmotech_api/models/dataset.py +47 -103
- cosmotech_api/models/dataset_access_control.py +7 -7
- cosmotech_api/models/dataset_compatibility.py +7 -7
- cosmotech_api/models/dataset_connector.py +7 -7
- cosmotech_api/models/dataset_copy_parameters.py +7 -7
- cosmotech_api/models/dataset_create_info.py +103 -0
- cosmotech_api/models/dataset_create_request.py +111 -0
- cosmotech_api/models/dataset_edit_info.py +90 -0
- cosmotech_api/models/dataset_part.py +132 -0
- cosmotech_api/models/dataset_part_create_request.py +100 -0
- cosmotech_api/models/dataset_part_type_enum.py +38 -0
- cosmotech_api/models/dataset_part_update_request.py +95 -0
- cosmotech_api/models/dataset_role.py +7 -7
- cosmotech_api/models/dataset_search.py +7 -7
- cosmotech_api/models/dataset_security.py +10 -10
- cosmotech_api/models/dataset_source_type.py +1 -1
- cosmotech_api/models/dataset_twin_graph_hash.py +7 -7
- cosmotech_api/models/dataset_twin_graph_info.py +7 -7
- cosmotech_api/models/dataset_twin_graph_query.py +7 -7
- cosmotech_api/models/dataset_update_request.py +105 -0
- cosmotech_api/models/delete_historical_data.py +7 -7
- cosmotech_api/models/edit_info.py +90 -0
- cosmotech_api/models/file_upload_metadata.py +7 -7
- cosmotech_api/models/file_upload_validation.py +13 -13
- cosmotech_api/models/graph_properties.py +7 -7
- cosmotech_api/models/ingestion_status_enum.py +40 -0
- cosmotech_api/models/io_types_enum.py +38 -0
- cosmotech_api/models/last_run_info.py +100 -0
- cosmotech_api/models/organization.py +24 -23
- cosmotech_api/models/organization_access_control.py +10 -10
- cosmotech_api/models/organization_create_request.py +95 -0
- cosmotech_api/models/organization_edit_info.py +90 -0
- cosmotech_api/models/organization_role.py +9 -9
- cosmotech_api/models/organization_security.py +13 -13
- cosmotech_api/models/organization_service.py +7 -7
- cosmotech_api/models/organization_services.py +7 -7
- cosmotech_api/models/organization_update_request.py +89 -0
- cosmotech_api/models/query_result.py +7 -7
- cosmotech_api/models/resource_size_info.py +7 -7
- cosmotech_api/models/run.py +20 -22
- cosmotech_api/models/run_container.py +9 -19
- cosmotech_api/models/run_container_artifact.py +7 -7
- cosmotech_api/models/run_container_logs.py +7 -7
- cosmotech_api/models/run_data.py +7 -7
- cosmotech_api/models/run_data_query.py +7 -7
- cosmotech_api/models/run_edit_info.py +90 -0
- cosmotech_api/models/run_logs.py +10 -10
- cosmotech_api/models/run_logs_entry.py +88 -0
- cosmotech_api/models/run_resource_requested.py +7 -7
- cosmotech_api/models/run_search.py +9 -18
- cosmotech_api/models/run_search_state.py +46 -0
- cosmotech_api/models/run_start_containers.py +10 -10
- cosmotech_api/models/run_state.py +2 -1
- cosmotech_api/models/run_status.py +17 -11
- cosmotech_api/models/run_status_node.py +7 -7
- cosmotech_api/models/run_template.py +20 -75
- cosmotech_api/models/run_template_create_request.py +109 -0
- cosmotech_api/models/run_template_handler_id.py +1 -1
- cosmotech_api/models/run_template_orchestrator.py +1 -1
- cosmotech_api/models/run_template_parameter.py +21 -20
- cosmotech_api/models/run_template_parameter_create_request.py +103 -0
- cosmotech_api/models/run_template_parameter_group.py +17 -18
- cosmotech_api/models/run_template_parameter_group_create_request.py +97 -0
- cosmotech_api/models/run_template_parameter_group_update_request.py +94 -0
- cosmotech_api/models/run_template_parameter_update_request.py +101 -0
- cosmotech_api/models/run_template_parameter_value.py +7 -7
- cosmotech_api/models/run_template_resource_sizing.py +8 -8
- cosmotech_api/models/run_template_step_source.py +1 -1
- cosmotech_api/models/run_template_update_request.py +107 -0
- cosmotech_api/models/runner.py +48 -62
- cosmotech_api/models/runner_access_control.py +7 -7
- cosmotech_api/models/runner_changed_parameter_value.py +7 -7
- cosmotech_api/models/runner_comparison_result.py +10 -10
- cosmotech_api/models/runner_create_request.py +146 -0
- cosmotech_api/models/runner_data_download_info.py +7 -7
- cosmotech_api/models/runner_data_download_job.py +7 -7
- cosmotech_api/models/runner_datasets.py +92 -0
- cosmotech_api/models/runner_edit_info.py +90 -0
- cosmotech_api/models/runner_job_state.py +1 -1
- cosmotech_api/models/runner_last_run.py +7 -7
- cosmotech_api/models/runner_parent_last_run.py +7 -7
- cosmotech_api/models/runner_resource_sizing.py +7 -7
- cosmotech_api/models/runner_role.py +7 -7
- cosmotech_api/models/runner_root_last_run.py +7 -7
- cosmotech_api/models/runner_run_template_parameter_value.py +7 -9
- cosmotech_api/models/runner_security.py +10 -10
- cosmotech_api/models/runner_update_request.py +119 -0
- cosmotech_api/models/runner_validation_status.py +1 -1
- cosmotech_api/models/scenario.py +10 -10
- cosmotech_api/models/scenario_access_control.py +7 -7
- cosmotech_api/models/scenario_changed_parameter_value.py +7 -7
- cosmotech_api/models/scenario_comparison_result.py +10 -10
- cosmotech_api/models/scenario_data_download_info.py +7 -7
- cosmotech_api/models/scenario_data_download_job.py +7 -7
- cosmotech_api/models/scenario_job_state.py +1 -1
- cosmotech_api/models/scenario_last_run.py +7 -7
- cosmotech_api/models/scenario_resource_sizing.py +7 -7
- cosmotech_api/models/scenario_role.py +7 -7
- cosmotech_api/models/scenario_run.py +13 -13
- cosmotech_api/models/scenario_run_container.py +10 -10
- cosmotech_api/models/scenario_run_container_artifact.py +7 -7
- cosmotech_api/models/scenario_run_container_logs.py +7 -7
- cosmotech_api/models/scenario_run_logs.py +10 -10
- cosmotech_api/models/scenario_run_resource_requested.py +7 -7
- cosmotech_api/models/scenario_run_search.py +9 -18
- cosmotech_api/models/scenario_run_search_state.py +46 -0
- cosmotech_api/models/scenario_run_start_containers.py +10 -10
- cosmotech_api/models/scenario_run_state.py +1 -1
- cosmotech_api/models/scenario_run_status.py +10 -10
- cosmotech_api/models/scenario_run_status_node.py +7 -7
- cosmotech_api/models/scenario_run_template_parameter_value.py +7 -7
- cosmotech_api/models/scenario_security.py +10 -10
- cosmotech_api/models/scenario_validation_status.py +1 -1
- cosmotech_api/models/send_run_data_request.py +7 -7
- cosmotech_api/models/solution.py +60 -44
- cosmotech_api/models/solution_access_control.py +10 -10
- cosmotech_api/models/solution_create_request.py +139 -0
- cosmotech_api/models/solution_edit_info.py +90 -0
- cosmotech_api/models/solution_file.py +88 -0
- cosmotech_api/models/solution_role.py +9 -9
- cosmotech_api/models/solution_security.py +13 -13
- cosmotech_api/models/solution_update_request.py +133 -0
- cosmotech_api/models/source_info.py +7 -7
- cosmotech_api/models/sub_dataset_graph_query.py +7 -7
- cosmotech_api/models/twin_graph_batch_result.py +7 -7
- cosmotech_api/models/twin_graph_hash.py +7 -7
- cosmotech_api/models/twin_graph_query.py +7 -7
- cosmotech_api/models/twincache_status_enum.py +38 -0
- cosmotech_api/models/validator.py +7 -7
- cosmotech_api/models/workspace.py +46 -42
- cosmotech_api/models/workspace_access_control.py +10 -10
- cosmotech_api/models/workspace_create_request.py +113 -0
- cosmotech_api/models/workspace_edit_info.py +90 -0
- cosmotech_api/models/workspace_file.py +10 -10
- cosmotech_api/models/workspace_role.py +9 -9
- cosmotech_api/models/workspace_secret.py +7 -7
- cosmotech_api/models/workspace_security.py +13 -13
- cosmotech_api/models/workspace_solution.py +33 -15
- cosmotech_api/models/workspace_update_request.py +105 -0
- cosmotech_api/models/workspace_web_app.py +7 -7
- cosmotech_api/rest.py +5 -2
- cosmotech_api-5.0.0rc3.dist-info/METADATA +314 -0
- cosmotech_api-5.0.0rc3.dist-info/RECORD +297 -0
- {cosmotech_api-3.2.0.post1.dist-info → cosmotech_api-5.0.0rc3.dist-info}/WHEEL +1 -1
- {cosmotech_api-3.2.0.post1.dist-info → cosmotech_api-5.0.0rc3.dist-info/licenses}/LICENSE +1 -1
- cosmotech_api-3.2.0.post1.dist-info/METADATA +0 -18
- cosmotech_api-3.2.0.post1.dist-info/RECORD +0 -255
- {cosmotech_api-3.2.0.post1.dist-info → cosmotech_api-5.0.0rc3.dist-info}/top_level.txt +0 -0
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
Cosmo Tech Platform API
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document:
|
|
8
|
+
The version of the OpenAPI document: 5.0.0-rc3
|
|
9
9
|
Contact: platform@cosmotech.com
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -18,44 +18,53 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, Field, StrictBool, StrictStr
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictStr, field_validator
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from typing_extensions import Annotated
|
|
24
|
+
from cosmotech_api.models.workspace_edit_info import WorkspaceEditInfo
|
|
23
25
|
from cosmotech_api.models.workspace_security import WorkspaceSecurity
|
|
24
26
|
from cosmotech_api.models.workspace_solution import WorkspaceSolution
|
|
25
|
-
from cosmotech_api.models.workspace_web_app import WorkspaceWebApp
|
|
26
27
|
from typing import Optional, Set
|
|
27
28
|
from typing_extensions import Self
|
|
28
29
|
|
|
29
30
|
class Workspace(BaseModel):
|
|
30
31
|
"""
|
|
31
|
-
|
|
32
|
+
A Workspace
|
|
32
33
|
""" # noqa: E501
|
|
33
|
-
id:
|
|
34
|
-
organization_id:
|
|
35
|
-
key:
|
|
36
|
-
name:
|
|
37
|
-
description: Optional[StrictStr] = Field(default=None, description="
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
34
|
+
id: Annotated[str, Field(strict=True)] = Field(description="Workspace unique identifier generated by the API")
|
|
35
|
+
organization_id: Annotated[str, Field(strict=True)] = Field(description="Organization unique identifier under which the workspace resides", alias="organizationId")
|
|
36
|
+
key: Annotated[str, Field(min_length=1, strict=True)] = Field(description="Technical key for resource name convention and version grouping. Must be unique")
|
|
37
|
+
name: Annotated[str, Field(min_length=1, strict=True)] = Field(description="Workspace name. This name is display in the sample webApp")
|
|
38
|
+
description: Optional[StrictStr] = Field(default=None, description="The Workspace description")
|
|
39
|
+
version: Optional[StrictStr] = Field(default=None, description="The Workspace version MAJOR.MINOR.PATCH.")
|
|
40
|
+
tags: Optional[List[StrictStr]] = Field(default=None, description="The list of tags")
|
|
41
|
+
create_info: WorkspaceEditInfo = Field(description="The details of the Workspace creation", alias="createInfo")
|
|
42
|
+
update_info: WorkspaceEditInfo = Field(description="The details of the Workspace last update", alias="updateInfo")
|
|
42
43
|
solution: WorkspaceSolution
|
|
43
|
-
|
|
44
|
-
send_input_to_data_warehouse: Optional[StrictBool] = Field(default=None, description="default setting for all Scenarios and Run Templates to set whether or not the Dataset values and the input parameters values are send to the DataWarehouse prior to the ScenarioRun", alias="sendInputToDataWarehouse")
|
|
45
|
-
use_dedicated_event_hub_namespace: Optional[StrictBool] = Field(default=False, description="Set this property to true to use a dedicated Azure Event Hub Namespace for this Workspace. The Event Hub Namespace must be named \\'<organization_id\\>-<workspace_id\\>\\' (in lower case). This Namespace must also contain two Event Hubs named \\'probesmeasures\\' and \\'scenariorun\\'.", alias="useDedicatedEventHubNamespace")
|
|
46
|
-
dedicated_event_hub_sas_key_name: Optional[StrictStr] = Field(default=None, description="the Dedicated Event Hub SAS key name, default to RootManageSharedAccessKey. Use the /secret endpoint to set the key value", alias="dedicatedEventHubSasKeyName")
|
|
47
|
-
dedicated_event_hub_authentication_strategy: Optional[StrictStr] = Field(default=None, description="the Event Hub authentication strategy, SHARED_ACCESS_POLICY or TENANT_CLIENT_CREDENTIALS. Default to the one defined for the tenant.", alias="dedicatedEventHubAuthenticationStrategy")
|
|
48
|
-
send_scenario_run_to_event_hub: Optional[StrictBool] = Field(default=True, description="default setting for all Scenarios and Run Templates to set whether or not the ScenarioRun is send to the Event Hub", alias="sendScenarioRunToEventHub")
|
|
49
|
-
send_scenario_metadata_to_event_hub: Optional[StrictBool] = Field(default=False, description="Set this property to false to not send scenario metada to Azure Event Hub Namespace for this Workspace. The Event Hub Namespace must be named \\'<organization_id\\>-<workspace_id\\>\\' (in lower case). This Namespace must also contain two Event Hubs named \\'scenariometadata\\' and \\'scenariorunmetadata\\'.", alias="sendScenarioMetadataToEventHub")
|
|
44
|
+
additional_data: Optional[Dict[str, Any]] = Field(default=None, description="Free form additional data", alias="additionalData")
|
|
50
45
|
dataset_copy: Optional[StrictBool] = Field(default=True, description="Activate the copy of dataset on scenario creation, meaning that each scenario created in this workspace will make this copy. when false, scenario use directly the dataset specified.", alias="datasetCopy")
|
|
51
|
-
security:
|
|
52
|
-
__properties: ClassVar[List[str]] = ["id", "organizationId", "key", "name", "description", "
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
|
|
46
|
+
security: WorkspaceSecurity
|
|
47
|
+
__properties: ClassVar[List[str]] = ["id", "organizationId", "key", "name", "description", "version", "tags", "createInfo", "updateInfo", "solution", "additionalData", "datasetCopy", "security"]
|
|
48
|
+
|
|
49
|
+
@field_validator('id')
|
|
50
|
+
def id_validate_regular_expression(cls, value):
|
|
51
|
+
"""Validates the regular expression"""
|
|
52
|
+
if not re.match(r"^w-\w{10,20}", value):
|
|
53
|
+
raise ValueError(r"must validate the regular expression /^w-\w{10,20}/")
|
|
54
|
+
return value
|
|
55
|
+
|
|
56
|
+
@field_validator('organization_id')
|
|
57
|
+
def organization_id_validate_regular_expression(cls, value):
|
|
58
|
+
"""Validates the regular expression"""
|
|
59
|
+
if not re.match(r"^o-\w{10,20}", value):
|
|
60
|
+
raise ValueError(r"must validate the regular expression /^o-\w{10,20}/")
|
|
61
|
+
return value
|
|
62
|
+
|
|
63
|
+
model_config = ConfigDict(
|
|
64
|
+
populate_by_name=True,
|
|
65
|
+
validate_assignment=True,
|
|
66
|
+
protected_namespaces=(),
|
|
67
|
+
)
|
|
59
68
|
|
|
60
69
|
|
|
61
70
|
def to_str(self) -> str:
|
|
@@ -83,12 +92,10 @@ class Workspace(BaseModel):
|
|
|
83
92
|
are ignored.
|
|
84
93
|
* OpenAPI `readOnly` fields are excluded.
|
|
85
94
|
* OpenAPI `readOnly` fields are excluded.
|
|
86
|
-
* OpenAPI `readOnly` fields are excluded.
|
|
87
95
|
"""
|
|
88
96
|
excluded_fields: Set[str] = set([
|
|
89
97
|
"id",
|
|
90
98
|
"organization_id",
|
|
91
|
-
"owner_id",
|
|
92
99
|
])
|
|
93
100
|
|
|
94
101
|
_dict = self.model_dump(
|
|
@@ -96,12 +103,15 @@ class Workspace(BaseModel):
|
|
|
96
103
|
exclude=excluded_fields,
|
|
97
104
|
exclude_none=True,
|
|
98
105
|
)
|
|
106
|
+
# override the default output from pydantic by calling `to_dict()` of create_info
|
|
107
|
+
if self.create_info:
|
|
108
|
+
_dict['createInfo'] = self.create_info.to_dict()
|
|
109
|
+
# override the default output from pydantic by calling `to_dict()` of update_info
|
|
110
|
+
if self.update_info:
|
|
111
|
+
_dict['updateInfo'] = self.update_info.to_dict()
|
|
99
112
|
# override the default output from pydantic by calling `to_dict()` of solution
|
|
100
113
|
if self.solution:
|
|
101
114
|
_dict['solution'] = self.solution.to_dict()
|
|
102
|
-
# override the default output from pydantic by calling `to_dict()` of web_app
|
|
103
|
-
if self.web_app:
|
|
104
|
-
_dict['webApp'] = self.web_app.to_dict()
|
|
105
115
|
# override the default output from pydantic by calling `to_dict()` of security
|
|
106
116
|
if self.security:
|
|
107
117
|
_dict['security'] = self.security.to_dict()
|
|
@@ -122,18 +132,12 @@ class Workspace(BaseModel):
|
|
|
122
132
|
"key": obj.get("key"),
|
|
123
133
|
"name": obj.get("name"),
|
|
124
134
|
"description": obj.get("description"),
|
|
125
|
-
"linkedDatasetIdList": obj.get("linkedDatasetIdList"),
|
|
126
135
|
"version": obj.get("version"),
|
|
127
136
|
"tags": obj.get("tags"),
|
|
128
|
-
"
|
|
137
|
+
"createInfo": WorkspaceEditInfo.from_dict(obj["createInfo"]) if obj.get("createInfo") is not None else None,
|
|
138
|
+
"updateInfo": WorkspaceEditInfo.from_dict(obj["updateInfo"]) if obj.get("updateInfo") is not None else None,
|
|
129
139
|
"solution": WorkspaceSolution.from_dict(obj["solution"]) if obj.get("solution") is not None else None,
|
|
130
|
-
"
|
|
131
|
-
"sendInputToDataWarehouse": obj.get("sendInputToDataWarehouse"),
|
|
132
|
-
"useDedicatedEventHubNamespace": obj.get("useDedicatedEventHubNamespace") if obj.get("useDedicatedEventHubNamespace") is not None else False,
|
|
133
|
-
"dedicatedEventHubSasKeyName": obj.get("dedicatedEventHubSasKeyName"),
|
|
134
|
-
"dedicatedEventHubAuthenticationStrategy": obj.get("dedicatedEventHubAuthenticationStrategy"),
|
|
135
|
-
"sendScenarioRunToEventHub": obj.get("sendScenarioRunToEventHub") if obj.get("sendScenarioRunToEventHub") is not None else True,
|
|
136
|
-
"sendScenarioMetadataToEventHub": obj.get("sendScenarioMetadataToEventHub") if obj.get("sendScenarioMetadataToEventHub") is not None else False,
|
|
140
|
+
"additionalData": obj.get("additionalData"),
|
|
137
141
|
"datasetCopy": obj.get("datasetCopy") if obj.get("datasetCopy") is not None else True,
|
|
138
142
|
"security": WorkspaceSecurity.from_dict(obj["security"]) if obj.get("security") is not None else None
|
|
139
143
|
})
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
Cosmo Tech Platform API
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document:
|
|
8
|
+
The version of the OpenAPI document: 5.0.0-rc3
|
|
9
9
|
Contact: platform@cosmotech.com
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -18,24 +18,24 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, Field, StrictStr
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
22
22
|
from typing import Any, ClassVar, Dict, List
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
25
25
|
|
|
26
26
|
class WorkspaceAccessControl(BaseModel):
|
|
27
27
|
"""
|
|
28
|
-
|
|
28
|
+
A Workspace access control item
|
|
29
29
|
""" # noqa: E501
|
|
30
|
-
id: StrictStr = Field(description="
|
|
31
|
-
role: StrictStr = Field(description="
|
|
30
|
+
id: StrictStr = Field(description="The identity id")
|
|
31
|
+
role: StrictStr = Field(description="A role")
|
|
32
32
|
__properties: ClassVar[List[str]] = ["id", "role"]
|
|
33
33
|
|
|
34
|
-
model_config =
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
model_config = ConfigDict(
|
|
35
|
+
populate_by_name=True,
|
|
36
|
+
validate_assignment=True,
|
|
37
|
+
protected_namespaces=(),
|
|
38
|
+
)
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
def to_str(self) -> str:
|
|
@@ -0,0 +1,113 @@
|
|
|
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: 5.0.0-rc3
|
|
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, ConfigDict, Field, StrictBool, StrictStr
|
|
22
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from typing_extensions import Annotated
|
|
24
|
+
from cosmotech_api.models.workspace_security import WorkspaceSecurity
|
|
25
|
+
from cosmotech_api.models.workspace_solution import WorkspaceSolution
|
|
26
|
+
from typing import Optional, Set
|
|
27
|
+
from typing_extensions import Self
|
|
28
|
+
|
|
29
|
+
class WorkspaceCreateRequest(BaseModel):
|
|
30
|
+
"""
|
|
31
|
+
Request object for creating a new workspace
|
|
32
|
+
""" # noqa: E501
|
|
33
|
+
key: Annotated[str, Field(min_length=1, strict=True)] = Field(description="Technical key for resource name convention and version grouping. Must be unique")
|
|
34
|
+
name: Annotated[str, Field(min_length=1, strict=True)] = Field(description="Workspace name. This name is displayed in the sample webApp")
|
|
35
|
+
description: Optional[StrictStr] = Field(default=None, description="The Workspace description")
|
|
36
|
+
version: Optional[StrictStr] = Field(default=None, description="The Workspace version MAJOR.MINOR.PATCH.")
|
|
37
|
+
tags: Optional[List[StrictStr]] = Field(default=None, description="The list of tags")
|
|
38
|
+
solution: WorkspaceSolution
|
|
39
|
+
additional_data: Optional[Dict[str, Any]] = Field(default=None, description="Free form additional data", alias="additionalData")
|
|
40
|
+
dataset_copy: Optional[StrictBool] = Field(default=True, description="Activate the copy of dataset on scenario creation", alias="datasetCopy")
|
|
41
|
+
security: Optional[WorkspaceSecurity] = None
|
|
42
|
+
__properties: ClassVar[List[str]] = ["key", "name", "description", "version", "tags", "solution", "additionalData", "datasetCopy", "security"]
|
|
43
|
+
|
|
44
|
+
model_config = ConfigDict(
|
|
45
|
+
populate_by_name=True,
|
|
46
|
+
validate_assignment=True,
|
|
47
|
+
protected_namespaces=(),
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def to_str(self) -> str:
|
|
52
|
+
"""Returns the string representation of the model using alias"""
|
|
53
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
54
|
+
|
|
55
|
+
def to_json(self) -> str:
|
|
56
|
+
"""Returns the JSON representation of the model using alias"""
|
|
57
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
58
|
+
return json.dumps(self.to_dict())
|
|
59
|
+
|
|
60
|
+
@classmethod
|
|
61
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
62
|
+
"""Create an instance of WorkspaceCreateRequest from a JSON string"""
|
|
63
|
+
return cls.from_dict(json.loads(json_str))
|
|
64
|
+
|
|
65
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
66
|
+
"""Return the dictionary representation of the model using alias.
|
|
67
|
+
|
|
68
|
+
This has the following differences from calling pydantic's
|
|
69
|
+
`self.model_dump(by_alias=True)`:
|
|
70
|
+
|
|
71
|
+
* `None` is only added to the output dict for nullable fields that
|
|
72
|
+
were set at model initialization. Other fields with value `None`
|
|
73
|
+
are ignored.
|
|
74
|
+
"""
|
|
75
|
+
excluded_fields: Set[str] = set([
|
|
76
|
+
])
|
|
77
|
+
|
|
78
|
+
_dict = self.model_dump(
|
|
79
|
+
by_alias=True,
|
|
80
|
+
exclude=excluded_fields,
|
|
81
|
+
exclude_none=True,
|
|
82
|
+
)
|
|
83
|
+
# override the default output from pydantic by calling `to_dict()` of solution
|
|
84
|
+
if self.solution:
|
|
85
|
+
_dict['solution'] = self.solution.to_dict()
|
|
86
|
+
# override the default output from pydantic by calling `to_dict()` of security
|
|
87
|
+
if self.security:
|
|
88
|
+
_dict['security'] = self.security.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 WorkspaceCreateRequest 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
|
+
"key": obj.get("key"),
|
|
102
|
+
"name": obj.get("name"),
|
|
103
|
+
"description": obj.get("description"),
|
|
104
|
+
"version": obj.get("version"),
|
|
105
|
+
"tags": obj.get("tags"),
|
|
106
|
+
"solution": WorkspaceSolution.from_dict(obj["solution"]) if obj.get("solution") is not None else None,
|
|
107
|
+
"additionalData": obj.get("additionalData"),
|
|
108
|
+
"datasetCopy": obj.get("datasetCopy") if obj.get("datasetCopy") is not None else True,
|
|
109
|
+
"security": WorkspaceSecurity.from_dict(obj["security"]) if obj.get("security") is not None else None
|
|
110
|
+
})
|
|
111
|
+
return _obj
|
|
112
|
+
|
|
113
|
+
|
|
@@ -0,0 +1,90 @@
|
|
|
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: 5.0.0-rc3
|
|
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, ConfigDict, Field, StrictInt, StrictStr
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class WorkspaceEditInfo(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
WorkspaceEditInfo
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
timestamp: StrictInt = Field(description="The timestamp of the modification in millisecond")
|
|
31
|
+
user_id: StrictStr = Field(description="The id of the user who did the modification", alias="userId")
|
|
32
|
+
__properties: ClassVar[List[str]] = ["timestamp", "userId"]
|
|
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 WorkspaceEditInfo 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
|
+
return _dict
|
|
74
|
+
|
|
75
|
+
@classmethod
|
|
76
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
77
|
+
"""Create an instance of WorkspaceEditInfo from a dict"""
|
|
78
|
+
if obj is None:
|
|
79
|
+
return None
|
|
80
|
+
|
|
81
|
+
if not isinstance(obj, dict):
|
|
82
|
+
return cls.model_validate(obj)
|
|
83
|
+
|
|
84
|
+
_obj = cls.model_validate({
|
|
85
|
+
"timestamp": obj.get("timestamp"),
|
|
86
|
+
"userId": obj.get("userId")
|
|
87
|
+
})
|
|
88
|
+
return _obj
|
|
89
|
+
|
|
90
|
+
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
Cosmo Tech Platform API
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document:
|
|
8
|
+
The version of the OpenAPI document: 5.0.0-rc3
|
|
9
9
|
Contact: platform@cosmotech.com
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -18,23 +18,23 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, Field, StrictStr
|
|
22
|
-
from typing import Any, ClassVar, Dict, List
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
22
|
+
from typing import Any, ClassVar, Dict, List
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
25
25
|
|
|
26
26
|
class WorkspaceFile(BaseModel):
|
|
27
27
|
"""
|
|
28
|
-
|
|
28
|
+
A Workspace File resource
|
|
29
29
|
""" # noqa: E501
|
|
30
|
-
file_name:
|
|
30
|
+
file_name: StrictStr = Field(description="The Workspace File name", alias="fileName")
|
|
31
31
|
__properties: ClassVar[List[str]] = ["fileName"]
|
|
32
32
|
|
|
33
|
-
model_config =
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
model_config = ConfigDict(
|
|
34
|
+
populate_by_name=True,
|
|
35
|
+
validate_assignment=True,
|
|
36
|
+
protected_namespaces=(),
|
|
37
|
+
)
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
def to_str(self) -> str:
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
Cosmo Tech Platform API
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document:
|
|
8
|
+
The version of the OpenAPI document: 5.0.0-rc3
|
|
9
9
|
Contact: platform@cosmotech.com
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -18,23 +18,23 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, Field, StrictStr
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
22
22
|
from typing import Any, ClassVar, Dict, List
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
25
25
|
|
|
26
26
|
class WorkspaceRole(BaseModel):
|
|
27
27
|
"""
|
|
28
|
-
|
|
28
|
+
The Workspace Role
|
|
29
29
|
""" # noqa: E501
|
|
30
|
-
role: StrictStr = Field(description="
|
|
30
|
+
role: StrictStr = Field(description="The Workspace Role")
|
|
31
31
|
__properties: ClassVar[List[str]] = ["role"]
|
|
32
32
|
|
|
33
|
-
model_config =
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
model_config = ConfigDict(
|
|
34
|
+
populate_by_name=True,
|
|
35
|
+
validate_assignment=True,
|
|
36
|
+
protected_namespaces=(),
|
|
37
|
+
)
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
def to_str(self) -> str:
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
Cosmo Tech Platform API
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document: 3.
|
|
8
|
+
The version of the OpenAPI document: 3.3.6
|
|
9
9
|
Contact: platform@cosmotech.com
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -18,7 +18,7 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, Field, StrictStr
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
@@ -30,11 +30,11 @@ class WorkspaceSecret(BaseModel):
|
|
|
30
30
|
dedicated_event_hub_key: Optional[StrictStr] = Field(default=None, description="the dedicated event hub shared access key", alias="dedicatedEventHubKey")
|
|
31
31
|
__properties: ClassVar[List[str]] = ["dedicatedEventHubKey"]
|
|
32
32
|
|
|
33
|
-
model_config =
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
model_config = ConfigDict(
|
|
34
|
+
populate_by_name=True,
|
|
35
|
+
validate_assignment=True,
|
|
36
|
+
protected_namespaces=(),
|
|
37
|
+
)
|
|
38
38
|
|
|
39
39
|
|
|
40
40
|
def to_str(self) -> str:
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
Cosmo Tech Platform API
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document:
|
|
8
|
+
The version of the OpenAPI document: 5.0.0-rc3
|
|
9
9
|
Contact: platform@cosmotech.com
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -18,7 +18,7 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, Field, StrictStr
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
22
22
|
from typing import Any, ClassVar, Dict, List
|
|
23
23
|
from cosmotech_api.models.workspace_access_control import WorkspaceAccessControl
|
|
24
24
|
from typing import Optional, Set
|
|
@@ -26,17 +26,17 @@ from typing_extensions import Self
|
|
|
26
26
|
|
|
27
27
|
class WorkspaceSecurity(BaseModel):
|
|
28
28
|
"""
|
|
29
|
-
|
|
29
|
+
The workspace security information
|
|
30
30
|
""" # noqa: E501
|
|
31
|
-
default: StrictStr = Field(description="
|
|
32
|
-
access_control_list: List[WorkspaceAccessControl] = Field(description="
|
|
31
|
+
default: StrictStr = Field(description="The role by default")
|
|
32
|
+
access_control_list: List[WorkspaceAccessControl] = Field(description="The list which can access this Workspace with detailed access control information", alias="accessControlList")
|
|
33
33
|
__properties: ClassVar[List[str]] = ["default", "accessControlList"]
|
|
34
34
|
|
|
35
|
-
model_config =
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
35
|
+
model_config = ConfigDict(
|
|
36
|
+
populate_by_name=True,
|
|
37
|
+
validate_assignment=True,
|
|
38
|
+
protected_namespaces=(),
|
|
39
|
+
)
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
def to_str(self) -> str:
|
|
@@ -74,9 +74,9 @@ class WorkspaceSecurity(BaseModel):
|
|
|
74
74
|
# override the default output from pydantic by calling `to_dict()` of each item in access_control_list (list)
|
|
75
75
|
_items = []
|
|
76
76
|
if self.access_control_list:
|
|
77
|
-
for
|
|
78
|
-
if
|
|
79
|
-
_items.append(
|
|
77
|
+
for _item_access_control_list in self.access_control_list:
|
|
78
|
+
if _item_access_control_list:
|
|
79
|
+
_items.append(_item_access_control_list.to_dict())
|
|
80
80
|
_dict['accessControlList'] = _items
|
|
81
81
|
return _dict
|
|
82
82
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
Cosmo Tech Platform API
|
|
7
7
|
|
|
8
|
-
The version of the OpenAPI document:
|
|
8
|
+
The version of the OpenAPI document: 5.0.0-rc3
|
|
9
9
|
Contact: platform@cosmotech.com
|
|
10
10
|
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
11
11
|
|
|
@@ -18,25 +18,43 @@ import pprint
|
|
|
18
18
|
import re # noqa: F401
|
|
19
19
|
import json
|
|
20
20
|
|
|
21
|
-
from pydantic import BaseModel, Field, StrictStr
|
|
21
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
22
22
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
23
|
+
from typing_extensions import Annotated
|
|
23
24
|
from typing import Optional, Set
|
|
24
25
|
from typing_extensions import Self
|
|
25
26
|
|
|
26
27
|
class WorkspaceSolution(BaseModel):
|
|
27
28
|
"""
|
|
28
|
-
|
|
29
|
+
The Workspace Solution configuration
|
|
29
30
|
""" # noqa: E501
|
|
30
|
-
solution_id:
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
__properties: ClassVar[List[str]] = ["solutionId", "
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
|
|
31
|
+
solution_id: Annotated[str, Field(strict=True)] = Field(description="The Solution Id attached to this workspace", alias="solutionId")
|
|
32
|
+
dataset_id: Optional[Annotated[str, Field(strict=True)]] = Field(default=None, description="The Dataset Id attached to this workspace. This dataset will be used to store default values for Solution parameters with file's varType. ", alias="datasetId")
|
|
33
|
+
default_parameter_values: Optional[Dict[str, StrictStr]] = Field(default=None, description="A map of parameterId/value to set default values for Solution parameters with simple varType (int, string, ...)", alias="defaultParameterValues")
|
|
34
|
+
__properties: ClassVar[List[str]] = ["solutionId", "datasetId", "defaultParameterValues"]
|
|
35
|
+
|
|
36
|
+
@field_validator('solution_id')
|
|
37
|
+
def solution_id_validate_regular_expression(cls, value):
|
|
38
|
+
"""Validates the regular expression"""
|
|
39
|
+
if not re.match(r"^sol-\w{10,20}", value):
|
|
40
|
+
raise ValueError(r"must validate the regular expression /^sol-\w{10,20}/")
|
|
41
|
+
return value
|
|
42
|
+
|
|
43
|
+
@field_validator('dataset_id')
|
|
44
|
+
def dataset_id_validate_regular_expression(cls, value):
|
|
45
|
+
"""Validates the regular expression"""
|
|
46
|
+
if value is None:
|
|
47
|
+
return value
|
|
48
|
+
|
|
49
|
+
if not re.match(r"^d-\w{10,20}", value):
|
|
50
|
+
raise ValueError(r"must validate the regular expression /^d-\w{10,20}/")
|
|
51
|
+
return value
|
|
52
|
+
|
|
53
|
+
model_config = ConfigDict(
|
|
54
|
+
populate_by_name=True,
|
|
55
|
+
validate_assignment=True,
|
|
56
|
+
protected_namespaces=(),
|
|
57
|
+
)
|
|
40
58
|
|
|
41
59
|
|
|
42
60
|
def to_str(self) -> str:
|
|
@@ -84,8 +102,8 @@ class WorkspaceSolution(BaseModel):
|
|
|
84
102
|
|
|
85
103
|
_obj = cls.model_validate({
|
|
86
104
|
"solutionId": obj.get("solutionId"),
|
|
87
|
-
"
|
|
88
|
-
"
|
|
105
|
+
"datasetId": obj.get("datasetId"),
|
|
106
|
+
"defaultParameterValues": obj.get("defaultParameterValues")
|
|
89
107
|
})
|
|
90
108
|
return _obj
|
|
91
109
|
|