waldur-api-client 7.8.2__py3-none-any.whl → 7.8.4__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 waldur-api-client might be problematic. Click here for more details.
- waldur_api_client/api/booking_resources/booking_resources_count.py +18 -0
- waldur_api_client/api/booking_resources/booking_resources_list.py +18 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_count.py +125 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_retrieve.py +126 -0
- waldur_api_client/api/marketplace_project_update_requests/marketplace_project_update_requests_count.py +18 -18
- waldur_api_client/api/marketplace_project_update_requests/marketplace_project_update_requests_list.py +18 -18
- waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_tos_stats_retrieve.py +146 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +18 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +18 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_move_resource.py +22 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_update_options.py +168 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +18 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +18 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_move_resource.py +22 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_renew.py +166 -0
- waldur_api_client/api/marketplace_service_providers/service_provider_checklists_summary.py +189 -0
- waldur_api_client/api/onboarding/__init__.py +1 -0
- waldur_api_client/api/onboarding/onboarding_supported_countries_retrieve.py +74 -0
- waldur_api_client/api/onboarding_justifications/__init__.py +1 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_attach_document.py +211 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_count.py +172 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_create.py +150 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_create_justification.py +154 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_destroy.py +89 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_list.py +175 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_partial_update.py +164 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_retrieve.py +142 -0
- waldur_api_client/api/onboarding_justifications/onboarding_justifications_update.py +164 -0
- waldur_api_client/api/onboarding_verifications/__init__.py +1 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_count.py +172 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_create.py +150 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_create_customer.py +144 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_destroy.py +89 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_list.py +175 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_partial_update.py +164 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_retrieve.py +142 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_update.py +164 -0
- waldur_api_client/api/onboarding_verifications/onboarding_verifications_validate_company.py +154 -0
- waldur_api_client/api/openstack_backups/openstack_backups_restore.py +10 -10
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_count.py +33 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_create.py +154 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_destroy.py +91 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_list.py +33 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_partial_update.py +164 -0
- waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_update.py +164 -0
- waldur_api_client/api/openstack_networks/openstack_networks_rbac_policy_create.py +24 -22
- waldur_api_client/api/projects/projects_checklist_template_count.py +125 -0
- waldur_api_client/api/projects/projects_checklist_template_retrieve.py +126 -0
- waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_count.py +125 -0
- waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_retrieve.py +126 -0
- waldur_api_client/api/proposal_protected_calls/proposal_protected_calls_offerings_list.py +15 -0
- waldur_api_client/api/rancher_services/rancher_services_create.py +22 -22
- waldur_api_client/models/__init__.py +88 -10
- waldur_api_client/models/azure_sql_server_create_order_attributes.py +5 -10
- waldur_api_client/models/azure_virtual_machine_create_order_attributes.py +7 -12
- waldur_api_client/models/booking_resource.py +9 -34
- waldur_api_client/models/booking_resources_list_field_item.py +1 -3
- waldur_api_client/models/booking_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/call_round.py +4 -4
- waldur_api_client/models/checklist_template.py +99 -0
- waldur_api_client/models/checklist_template_checklist.py +44 -0
- waldur_api_client/models/constance_settings.py +54 -0
- waldur_api_client/models/constance_settings_request.py +54 -0
- waldur_api_client/models/constance_settings_request_form.py +54 -0
- waldur_api_client/models/constance_settings_request_multipart.py +99 -0
- waldur_api_client/models/customer.py +9 -0
- waldur_api_client/models/customers_list_field_item.py +1 -0
- waldur_api_client/models/customers_retrieve_field_item.py +1 -0
- waldur_api_client/models/deprecated_network_rbac_policy.py +137 -0
- waldur_api_client/models/deprecated_network_rbac_policy_request.py +78 -0
- waldur_api_client/models/event_groups_enum.py +1 -0
- waldur_api_client/models/event_types_enum.py +3 -0
- waldur_api_client/models/generic_order_attributes.py +1 -2
- waldur_api_client/models/managed_rancher_cluster_resources_list_field_item.py +1 -3
- waldur_api_client/models/managed_rancher_cluster_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_orders_list_field_item.py +1 -3
- waldur_api_client/models/marketplace_orders_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_provider_resources_list_field_item.py +1 -3
- waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_resources_list_field_item.py +1 -3
- waldur_api_client/models/marketplace_resources_retrieve_field_item.py +1 -3
- waldur_api_client/models/marketplace_robot_accounts_list_field_item.py +2 -1
- waldur_api_client/models/marketplace_robot_accounts_retrieve_field_item.py +2 -1
- waldur_api_client/models/marketplace_service_providers_projects_list_field_item.py +1 -0
- waldur_api_client/models/merged_plugin_options.py +27 -0
- waldur_api_client/models/merged_plugin_options_request.py +27 -0
- waldur_api_client/models/move_resource_request.py +65 -0
- waldur_api_client/models/nested_round.py +5 -5
- waldur_api_client/models/network_rbac_policy_request.py +8 -0
- waldur_api_client/models/notification.py +9 -9
- waldur_api_client/models/{notification_context_fields.py → notification_context_schema.py} +6 -6
- waldur_api_client/models/notification_template_detail_serializers.py +9 -3
- waldur_api_client/models/offering_component.py +79 -0
- waldur_api_client/models/offering_component_request.py +80 -0
- waldur_api_client/models/onboarding_company_validation_request_request.py +88 -0
- waldur_api_client/models/onboarding_justification.py +183 -0
- waldur_api_client/models/onboarding_justification_create_request.py +68 -0
- waldur_api_client/models/onboarding_justification_documentation.py +108 -0
- waldur_api_client/models/onboarding_justification_documentation_request.py +84 -0
- waldur_api_client/models/onboarding_justification_documentation_request_form.py +84 -0
- waldur_api_client/models/onboarding_justification_documentation_request_multipart.py +98 -0
- waldur_api_client/models/onboarding_justification_request.py +75 -0
- waldur_api_client/models/onboarding_verification.py +250 -0
- waldur_api_client/models/onboarding_verification_request.py +128 -0
- waldur_api_client/models/onboarding_verification_status_enum.py +12 -0
- waldur_api_client/models/open_stack_backup_restoration.py +3 -5
- waldur_api_client/models/open_stack_backup_restoration_create_request.py +141 -0
- waldur_api_client/models/open_stack_backup_restoration_request.py +22 -30
- waldur_api_client/models/open_stack_create_floating_ip_request.py +89 -0
- waldur_api_client/models/open_stack_create_port_request.py +104 -0
- waldur_api_client/models/open_stack_instance.py +13 -29
- waldur_api_client/models/open_stack_instance_create_order_attributes.py +67 -54
- waldur_api_client/models/open_stack_instance_floating_i_ps_update_request.py +5 -5
- waldur_api_client/models/open_stack_instance_ports_update_request.py +5 -5
- waldur_api_client/models/open_stack_instance_request.py +1 -67
- waldur_api_client/models/open_stack_nested_port_request.py +0 -9
- waldur_api_client/models/{open_stack_nested_security_group_request.py → open_stack_security_group_hyperlink_request.py} +14 -14
- waldur_api_client/models/open_stack_server_group_hyperlink_request.py +59 -0
- waldur_api_client/models/open_stack_tenant_create_order_attributes.py +9 -14
- waldur_api_client/models/open_stack_volume_create_order_attributes.py +8 -13
- waldur_api_client/models/openstack_instances_list_field_item.py +0 -7
- waldur_api_client/models/openstack_instances_retrieve_field_item.py +0 -7
- waldur_api_client/models/order_create.py +8 -0
- waldur_api_client/models/order_details.py +9 -34
- waldur_api_client/models/patched_network_rbac_policy_request.py +85 -0
- waldur_api_client/models/patched_onboarding_justification_request.py +77 -0
- waldur_api_client/models/patched_onboarding_verification_request.py +128 -0
- waldur_api_client/models/patched_open_stack_instance_request.py +1 -67
- waldur_api_client/models/patched_project_credit_request.py +13 -0
- waldur_api_client/models/patched_project_request.py +1 -2
- waldur_api_client/models/patched_project_request_form.py +1 -2
- waldur_api_client/models/patched_project_request_multipart.py +1 -2
- waldur_api_client/models/project.py +10 -2
- waldur_api_client/models/project_credit.py +13 -0
- waldur_api_client/models/project_credit_request.py +13 -0
- waldur_api_client/models/{rancher_nested_security_group.py → project_hyperlink_request.py} +5 -5
- waldur_api_client/models/project_request.py +1 -2
- waldur_api_client/models/project_request_form.py +1 -2
- waldur_api_client/models/project_request_multipart.py +1 -2
- waldur_api_client/models/projects_list_field_item.py +1 -0
- waldur_api_client/models/projects_retrieve_field_item.py +1 -0
- waldur_api_client/models/protected_round.py +4 -4
- waldur_api_client/models/question.py +102 -0
- waldur_api_client/models/{open_stack_data_volume.py → question_options.py} +27 -29
- waldur_api_client/models/rancher_clusters_list_field_item.py +0 -1
- waldur_api_client/models/rancher_clusters_retrieve_field_item.py +0 -1
- waldur_api_client/models/rancher_service_create.py +508 -0
- waldur_api_client/models/rancher_service_create_marketplace_offering_plugin_options_type_0.py +44 -0
- waldur_api_client/models/rancher_service_create_request.py +185 -0
- waldur_api_client/models/rancher_service_request.py +16 -19
- waldur_api_client/models/rancher_workload_create.py +59 -0
- waldur_api_client/models/rancher_workload_create_request.py +59 -0
- waldur_api_client/models/resource.py +9 -34
- waldur_api_client/models/resource_renew_request.py +83 -0
- waldur_api_client/models/resource_renew_request_limits.py +44 -0
- waldur_api_client/models/robot_account_details.py +22 -13
- waldur_api_client/models/{status_enum.py → round_status.py} +1 -1
- waldur_api_client/models/service_provider_checklist_summary.py +98 -0
- waldur_api_client/models/slurm_invoices_slurm_package_create_order_attributes.py +4 -9
- waldur_api_client/models/time_series_to_s_data.py +69 -0
- waldur_api_client/models/to_s_consent_dashboard.py +155 -0
- waldur_api_client/models/update_offering_component_request.py +79 -0
- waldur_api_client/models/v_mware_virtual_machine_create_order_attributes.py +11 -16
- waldur_api_client/models/validation_decision_enum.py +10 -0
- waldur_api_client/models/validation_method_enum.py +8 -0
- waldur_api_client/models/version_adoption.py +67 -0
- waldur_api_client/models/vmware_nested_network.py +0 -25
- waldur_api_client/models/vmware_nested_network_request.py +6 -14
- {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/METADATA +1 -1
- {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/RECORD +174 -101
- {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/WHEEL +0 -0
- {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/licenses/LICENSE +0 -0
|
@@ -47,7 +47,8 @@ class RobotAccountDetails:
|
|
|
47
47
|
project_uuid (Union[Unset, UUID]):
|
|
48
48
|
customer_uuid (Union[Unset, UUID]):
|
|
49
49
|
customer_name (Union[Unset, str]):
|
|
50
|
-
|
|
50
|
+
provider_uuid (Union[Unset, UUID]):
|
|
51
|
+
provider_name (Union[Unset, str]):
|
|
51
52
|
offering_plugin_options (Union[Unset, MergedPluginOptions]):
|
|
52
53
|
"""
|
|
53
54
|
|
|
@@ -74,7 +75,8 @@ class RobotAccountDetails:
|
|
|
74
75
|
project_uuid: Union[Unset, UUID] = UNSET
|
|
75
76
|
customer_uuid: Union[Unset, UUID] = UNSET
|
|
76
77
|
customer_name: Union[Unset, str] = UNSET
|
|
77
|
-
|
|
78
|
+
provider_uuid: Union[Unset, UUID] = UNSET
|
|
79
|
+
provider_name: Union[Unset, str] = UNSET
|
|
78
80
|
offering_plugin_options: Union[Unset, "MergedPluginOptions"] = UNSET
|
|
79
81
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
80
82
|
|
|
@@ -162,9 +164,11 @@ class RobotAccountDetails:
|
|
|
162
164
|
|
|
163
165
|
customer_name = self.customer_name
|
|
164
166
|
|
|
165
|
-
|
|
166
|
-
if not isinstance(self.
|
|
167
|
-
|
|
167
|
+
provider_uuid: Union[Unset, str] = UNSET
|
|
168
|
+
if not isinstance(self.provider_uuid, Unset):
|
|
169
|
+
provider_uuid = str(self.provider_uuid)
|
|
170
|
+
|
|
171
|
+
provider_name = self.provider_name
|
|
168
172
|
|
|
169
173
|
offering_plugin_options: Union[Unset, dict[str, Any]] = UNSET
|
|
170
174
|
if not isinstance(self.offering_plugin_options, Unset):
|
|
@@ -219,8 +223,10 @@ class RobotAccountDetails:
|
|
|
219
223
|
field_dict["customer_uuid"] = customer_uuid
|
|
220
224
|
if customer_name is not UNSET:
|
|
221
225
|
field_dict["customer_name"] = customer_name
|
|
222
|
-
if
|
|
223
|
-
field_dict["
|
|
226
|
+
if provider_uuid is not UNSET:
|
|
227
|
+
field_dict["provider_uuid"] = provider_uuid
|
|
228
|
+
if provider_name is not UNSET:
|
|
229
|
+
field_dict["provider_name"] = provider_name
|
|
224
230
|
if offering_plugin_options is not UNSET:
|
|
225
231
|
field_dict["offering_plugin_options"] = offering_plugin_options
|
|
226
232
|
|
|
@@ -345,12 +351,14 @@ class RobotAccountDetails:
|
|
|
345
351
|
|
|
346
352
|
customer_name = d.pop("customer_name", UNSET)
|
|
347
353
|
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
if isinstance(
|
|
351
|
-
|
|
354
|
+
_provider_uuid = d.pop("provider_uuid", UNSET)
|
|
355
|
+
provider_uuid: Union[Unset, UUID]
|
|
356
|
+
if isinstance(_provider_uuid, Unset):
|
|
357
|
+
provider_uuid = UNSET
|
|
352
358
|
else:
|
|
353
|
-
|
|
359
|
+
provider_uuid = UUID(_provider_uuid)
|
|
360
|
+
|
|
361
|
+
provider_name = d.pop("provider_name", UNSET)
|
|
354
362
|
|
|
355
363
|
_offering_plugin_options = d.pop("offering_plugin_options", UNSET)
|
|
356
364
|
offering_plugin_options: Union[Unset, MergedPluginOptions]
|
|
@@ -383,7 +391,8 @@ class RobotAccountDetails:
|
|
|
383
391
|
project_uuid=project_uuid,
|
|
384
392
|
customer_uuid=customer_uuid,
|
|
385
393
|
customer_name=customer_name,
|
|
386
|
-
|
|
394
|
+
provider_uuid=provider_uuid,
|
|
395
|
+
provider_name=provider_name,
|
|
387
396
|
offering_plugin_options=offering_plugin_options,
|
|
388
397
|
)
|
|
389
398
|
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar, Union, cast
|
|
3
|
+
from uuid import UUID
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
T = TypeVar("T", bound="ServiceProviderChecklistSummary")
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@_attrs_define
|
|
12
|
+
class ServiceProviderChecklistSummary:
|
|
13
|
+
"""
|
|
14
|
+
Attributes:
|
|
15
|
+
checklist_uuid (UUID):
|
|
16
|
+
checklist_name (str):
|
|
17
|
+
questions_count (int):
|
|
18
|
+
offerings_count (int):
|
|
19
|
+
category_name (Union[None, str]):
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
checklist_uuid: UUID
|
|
23
|
+
checklist_name: str
|
|
24
|
+
questions_count: int
|
|
25
|
+
offerings_count: int
|
|
26
|
+
category_name: Union[None, str]
|
|
27
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
28
|
+
|
|
29
|
+
def to_dict(self) -> dict[str, Any]:
|
|
30
|
+
checklist_uuid = str(self.checklist_uuid)
|
|
31
|
+
|
|
32
|
+
checklist_name = self.checklist_name
|
|
33
|
+
|
|
34
|
+
questions_count = self.questions_count
|
|
35
|
+
|
|
36
|
+
offerings_count = self.offerings_count
|
|
37
|
+
|
|
38
|
+
category_name: Union[None, str]
|
|
39
|
+
category_name = self.category_name
|
|
40
|
+
|
|
41
|
+
field_dict: dict[str, Any] = {}
|
|
42
|
+
field_dict.update(self.additional_properties)
|
|
43
|
+
field_dict.update(
|
|
44
|
+
{
|
|
45
|
+
"checklist_uuid": checklist_uuid,
|
|
46
|
+
"checklist_name": checklist_name,
|
|
47
|
+
"questions_count": questions_count,
|
|
48
|
+
"offerings_count": offerings_count,
|
|
49
|
+
"category_name": category_name,
|
|
50
|
+
}
|
|
51
|
+
)
|
|
52
|
+
|
|
53
|
+
return field_dict
|
|
54
|
+
|
|
55
|
+
@classmethod
|
|
56
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
57
|
+
d = dict(src_dict)
|
|
58
|
+
checklist_uuid = UUID(d.pop("checklist_uuid"))
|
|
59
|
+
|
|
60
|
+
checklist_name = d.pop("checklist_name")
|
|
61
|
+
|
|
62
|
+
questions_count = d.pop("questions_count")
|
|
63
|
+
|
|
64
|
+
offerings_count = d.pop("offerings_count")
|
|
65
|
+
|
|
66
|
+
def _parse_category_name(data: object) -> Union[None, str]:
|
|
67
|
+
if data is None:
|
|
68
|
+
return data
|
|
69
|
+
return cast(Union[None, str], data)
|
|
70
|
+
|
|
71
|
+
category_name = _parse_category_name(d.pop("category_name"))
|
|
72
|
+
|
|
73
|
+
service_provider_checklist_summary = cls(
|
|
74
|
+
checklist_uuid=checklist_uuid,
|
|
75
|
+
checklist_name=checklist_name,
|
|
76
|
+
questions_count=questions_count,
|
|
77
|
+
offerings_count=offerings_count,
|
|
78
|
+
category_name=category_name,
|
|
79
|
+
)
|
|
80
|
+
|
|
81
|
+
service_provider_checklist_summary.additional_properties = d
|
|
82
|
+
return service_provider_checklist_summary
|
|
83
|
+
|
|
84
|
+
@property
|
|
85
|
+
def additional_keys(self) -> list[str]:
|
|
86
|
+
return list(self.additional_properties.keys())
|
|
87
|
+
|
|
88
|
+
def __getitem__(self, key: str) -> Any:
|
|
89
|
+
return self.additional_properties[key]
|
|
90
|
+
|
|
91
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
92
|
+
self.additional_properties[key] = value
|
|
93
|
+
|
|
94
|
+
def __delitem__(self, key: str) -> None:
|
|
95
|
+
del self.additional_properties[key]
|
|
96
|
+
|
|
97
|
+
def __contains__(self, key: str) -> bool:
|
|
98
|
+
return key in self.additional_properties
|
|
@@ -11,15 +11,10 @@ T = TypeVar("T", bound="SlurmInvoicesSlurmPackageCreateOrderAttributes")
|
|
|
11
11
|
|
|
12
12
|
@_attrs_define
|
|
13
13
|
class SlurmInvoicesSlurmPackageCreateOrderAttributes:
|
|
14
|
-
"""
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
but remains active for list views (where parent is a ListSerializer).
|
|
19
|
-
|
|
20
|
-
Attributes:
|
|
21
|
-
name (str):
|
|
22
|
-
description (Union[Unset, str]):
|
|
14
|
+
"""
|
|
15
|
+
Attributes:
|
|
16
|
+
name (str):
|
|
17
|
+
description (Union[Unset, str]):
|
|
23
18
|
"""
|
|
24
19
|
|
|
25
20
|
name: str
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from collections.abc import Mapping
|
|
3
|
+
from typing import Any, TypeVar
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
from dateutil.parser import isoparse
|
|
8
|
+
|
|
9
|
+
T = TypeVar("T", bound="TimeSeriesToSData")
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@_attrs_define
|
|
13
|
+
class TimeSeriesToSData:
|
|
14
|
+
"""
|
|
15
|
+
Attributes:
|
|
16
|
+
date (datetime.date):
|
|
17
|
+
count (int):
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
date: datetime.date
|
|
21
|
+
count: int
|
|
22
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
23
|
+
|
|
24
|
+
def to_dict(self) -> dict[str, Any]:
|
|
25
|
+
date = self.date.isoformat()
|
|
26
|
+
|
|
27
|
+
count = self.count
|
|
28
|
+
|
|
29
|
+
field_dict: dict[str, Any] = {}
|
|
30
|
+
field_dict.update(self.additional_properties)
|
|
31
|
+
field_dict.update(
|
|
32
|
+
{
|
|
33
|
+
"date": date,
|
|
34
|
+
"count": count,
|
|
35
|
+
}
|
|
36
|
+
)
|
|
37
|
+
|
|
38
|
+
return field_dict
|
|
39
|
+
|
|
40
|
+
@classmethod
|
|
41
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
42
|
+
d = dict(src_dict)
|
|
43
|
+
date = isoparse(d.pop("date")).date()
|
|
44
|
+
|
|
45
|
+
count = d.pop("count")
|
|
46
|
+
|
|
47
|
+
time_series_to_s_data = cls(
|
|
48
|
+
date=date,
|
|
49
|
+
count=count,
|
|
50
|
+
)
|
|
51
|
+
|
|
52
|
+
time_series_to_s_data.additional_properties = d
|
|
53
|
+
return time_series_to_s_data
|
|
54
|
+
|
|
55
|
+
@property
|
|
56
|
+
def additional_keys(self) -> list[str]:
|
|
57
|
+
return list(self.additional_properties.keys())
|
|
58
|
+
|
|
59
|
+
def __getitem__(self, key: str) -> Any:
|
|
60
|
+
return self.additional_properties[key]
|
|
61
|
+
|
|
62
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
63
|
+
self.additional_properties[key] = value
|
|
64
|
+
|
|
65
|
+
def __delitem__(self, key: str) -> None:
|
|
66
|
+
del self.additional_properties[key]
|
|
67
|
+
|
|
68
|
+
def __contains__(self, key: str) -> bool:
|
|
69
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import TYPE_CHECKING, Any, TypeVar
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
if TYPE_CHECKING:
|
|
8
|
+
from ..models.time_series_to_s_data import TimeSeriesToSData
|
|
9
|
+
from ..models.version_adoption import VersionAdoption
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T", bound="ToSConsentDashboard")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@_attrs_define
|
|
16
|
+
class ToSConsentDashboard:
|
|
17
|
+
"""
|
|
18
|
+
Attributes:
|
|
19
|
+
active_users_count (int):
|
|
20
|
+
total_users_count (int):
|
|
21
|
+
active_users_percentage (float):
|
|
22
|
+
accepted_consents_count (int):
|
|
23
|
+
revoked_consents_count (int):
|
|
24
|
+
total_consents_count (int):
|
|
25
|
+
revoked_consents_over_time (list['TimeSeriesToSData']):
|
|
26
|
+
tos_version_adoption (list['VersionAdoption']):
|
|
27
|
+
active_users_over_time (list['TimeSeriesToSData']):
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
active_users_count: int
|
|
31
|
+
total_users_count: int
|
|
32
|
+
active_users_percentage: float
|
|
33
|
+
accepted_consents_count: int
|
|
34
|
+
revoked_consents_count: int
|
|
35
|
+
total_consents_count: int
|
|
36
|
+
revoked_consents_over_time: list["TimeSeriesToSData"]
|
|
37
|
+
tos_version_adoption: list["VersionAdoption"]
|
|
38
|
+
active_users_over_time: list["TimeSeriesToSData"]
|
|
39
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
40
|
+
|
|
41
|
+
def to_dict(self) -> dict[str, Any]:
|
|
42
|
+
active_users_count = self.active_users_count
|
|
43
|
+
|
|
44
|
+
total_users_count = self.total_users_count
|
|
45
|
+
|
|
46
|
+
active_users_percentage = self.active_users_percentage
|
|
47
|
+
|
|
48
|
+
accepted_consents_count = self.accepted_consents_count
|
|
49
|
+
|
|
50
|
+
revoked_consents_count = self.revoked_consents_count
|
|
51
|
+
|
|
52
|
+
total_consents_count = self.total_consents_count
|
|
53
|
+
|
|
54
|
+
revoked_consents_over_time = []
|
|
55
|
+
for revoked_consents_over_time_item_data in self.revoked_consents_over_time:
|
|
56
|
+
revoked_consents_over_time_item = revoked_consents_over_time_item_data.to_dict()
|
|
57
|
+
revoked_consents_over_time.append(revoked_consents_over_time_item)
|
|
58
|
+
|
|
59
|
+
tos_version_adoption = []
|
|
60
|
+
for tos_version_adoption_item_data in self.tos_version_adoption:
|
|
61
|
+
tos_version_adoption_item = tos_version_adoption_item_data.to_dict()
|
|
62
|
+
tos_version_adoption.append(tos_version_adoption_item)
|
|
63
|
+
|
|
64
|
+
active_users_over_time = []
|
|
65
|
+
for active_users_over_time_item_data in self.active_users_over_time:
|
|
66
|
+
active_users_over_time_item = active_users_over_time_item_data.to_dict()
|
|
67
|
+
active_users_over_time.append(active_users_over_time_item)
|
|
68
|
+
|
|
69
|
+
field_dict: dict[str, Any] = {}
|
|
70
|
+
field_dict.update(self.additional_properties)
|
|
71
|
+
field_dict.update(
|
|
72
|
+
{
|
|
73
|
+
"active_users_count": active_users_count,
|
|
74
|
+
"total_users_count": total_users_count,
|
|
75
|
+
"active_users_percentage": active_users_percentage,
|
|
76
|
+
"accepted_consents_count": accepted_consents_count,
|
|
77
|
+
"revoked_consents_count": revoked_consents_count,
|
|
78
|
+
"total_consents_count": total_consents_count,
|
|
79
|
+
"revoked_consents_over_time": revoked_consents_over_time,
|
|
80
|
+
"tos_version_adoption": tos_version_adoption,
|
|
81
|
+
"active_users_over_time": active_users_over_time,
|
|
82
|
+
}
|
|
83
|
+
)
|
|
84
|
+
|
|
85
|
+
return field_dict
|
|
86
|
+
|
|
87
|
+
@classmethod
|
|
88
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
89
|
+
from ..models.time_series_to_s_data import TimeSeriesToSData
|
|
90
|
+
from ..models.version_adoption import VersionAdoption
|
|
91
|
+
|
|
92
|
+
d = dict(src_dict)
|
|
93
|
+
active_users_count = d.pop("active_users_count")
|
|
94
|
+
|
|
95
|
+
total_users_count = d.pop("total_users_count")
|
|
96
|
+
|
|
97
|
+
active_users_percentage = d.pop("active_users_percentage")
|
|
98
|
+
|
|
99
|
+
accepted_consents_count = d.pop("accepted_consents_count")
|
|
100
|
+
|
|
101
|
+
revoked_consents_count = d.pop("revoked_consents_count")
|
|
102
|
+
|
|
103
|
+
total_consents_count = d.pop("total_consents_count")
|
|
104
|
+
|
|
105
|
+
revoked_consents_over_time = []
|
|
106
|
+
_revoked_consents_over_time = d.pop("revoked_consents_over_time")
|
|
107
|
+
for revoked_consents_over_time_item_data in _revoked_consents_over_time:
|
|
108
|
+
revoked_consents_over_time_item = TimeSeriesToSData.from_dict(revoked_consents_over_time_item_data)
|
|
109
|
+
|
|
110
|
+
revoked_consents_over_time.append(revoked_consents_over_time_item)
|
|
111
|
+
|
|
112
|
+
tos_version_adoption = []
|
|
113
|
+
_tos_version_adoption = d.pop("tos_version_adoption")
|
|
114
|
+
for tos_version_adoption_item_data in _tos_version_adoption:
|
|
115
|
+
tos_version_adoption_item = VersionAdoption.from_dict(tos_version_adoption_item_data)
|
|
116
|
+
|
|
117
|
+
tos_version_adoption.append(tos_version_adoption_item)
|
|
118
|
+
|
|
119
|
+
active_users_over_time = []
|
|
120
|
+
_active_users_over_time = d.pop("active_users_over_time")
|
|
121
|
+
for active_users_over_time_item_data in _active_users_over_time:
|
|
122
|
+
active_users_over_time_item = TimeSeriesToSData.from_dict(active_users_over_time_item_data)
|
|
123
|
+
|
|
124
|
+
active_users_over_time.append(active_users_over_time_item)
|
|
125
|
+
|
|
126
|
+
to_s_consent_dashboard = cls(
|
|
127
|
+
active_users_count=active_users_count,
|
|
128
|
+
total_users_count=total_users_count,
|
|
129
|
+
active_users_percentage=active_users_percentage,
|
|
130
|
+
accepted_consents_count=accepted_consents_count,
|
|
131
|
+
revoked_consents_count=revoked_consents_count,
|
|
132
|
+
total_consents_count=total_consents_count,
|
|
133
|
+
revoked_consents_over_time=revoked_consents_over_time,
|
|
134
|
+
tos_version_adoption=tos_version_adoption,
|
|
135
|
+
active_users_over_time=active_users_over_time,
|
|
136
|
+
)
|
|
137
|
+
|
|
138
|
+
to_s_consent_dashboard.additional_properties = d
|
|
139
|
+
return to_s_consent_dashboard
|
|
140
|
+
|
|
141
|
+
@property
|
|
142
|
+
def additional_keys(self) -> list[str]:
|
|
143
|
+
return list(self.additional_properties.keys())
|
|
144
|
+
|
|
145
|
+
def __getitem__(self, key: str) -> Any:
|
|
146
|
+
return self.additional_properties[key]
|
|
147
|
+
|
|
148
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
149
|
+
self.additional_properties[key] = value
|
|
150
|
+
|
|
151
|
+
def __delitem__(self, key: str) -> None:
|
|
152
|
+
del self.additional_properties[key]
|
|
153
|
+
|
|
154
|
+
def __contains__(self, key: str) -> bool:
|
|
155
|
+
return key in self.additional_properties
|
|
@@ -32,6 +32,10 @@ class UpdateOfferingComponentRequest:
|
|
|
32
32
|
max_available_limit (Union[None, Unset, int]):
|
|
33
33
|
is_boolean (Union[Unset, bool]):
|
|
34
34
|
default_limit (Union[None, Unset, int]):
|
|
35
|
+
is_prepaid (Union[Unset, bool]):
|
|
36
|
+
overage_component (Union[None, UUID, Unset]):
|
|
37
|
+
min_prepaid_duration (Union[None, Unset, int]):
|
|
38
|
+
max_prepaid_duration (Union[None, Unset, int]):
|
|
35
39
|
"""
|
|
36
40
|
|
|
37
41
|
uuid: UUID
|
|
@@ -49,6 +53,10 @@ class UpdateOfferingComponentRequest:
|
|
|
49
53
|
max_available_limit: Union[None, Unset, int] = UNSET
|
|
50
54
|
is_boolean: Union[Unset, bool] = UNSET
|
|
51
55
|
default_limit: Union[None, Unset, int] = UNSET
|
|
56
|
+
is_prepaid: Union[Unset, bool] = UNSET
|
|
57
|
+
overage_component: Union[None, UUID, Unset] = UNSET
|
|
58
|
+
min_prepaid_duration: Union[None, Unset, int] = UNSET
|
|
59
|
+
max_prepaid_duration: Union[None, Unset, int] = UNSET
|
|
52
60
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
53
61
|
|
|
54
62
|
def to_dict(self) -> dict[str, Any]:
|
|
@@ -110,6 +118,28 @@ class UpdateOfferingComponentRequest:
|
|
|
110
118
|
else:
|
|
111
119
|
default_limit = self.default_limit
|
|
112
120
|
|
|
121
|
+
is_prepaid = self.is_prepaid
|
|
122
|
+
|
|
123
|
+
overage_component: Union[None, Unset, str]
|
|
124
|
+
if isinstance(self.overage_component, Unset):
|
|
125
|
+
overage_component = UNSET
|
|
126
|
+
elif isinstance(self.overage_component, UUID):
|
|
127
|
+
overage_component = str(self.overage_component)
|
|
128
|
+
else:
|
|
129
|
+
overage_component = self.overage_component
|
|
130
|
+
|
|
131
|
+
min_prepaid_duration: Union[None, Unset, int]
|
|
132
|
+
if isinstance(self.min_prepaid_duration, Unset):
|
|
133
|
+
min_prepaid_duration = UNSET
|
|
134
|
+
else:
|
|
135
|
+
min_prepaid_duration = self.min_prepaid_duration
|
|
136
|
+
|
|
137
|
+
max_prepaid_duration: Union[None, Unset, int]
|
|
138
|
+
if isinstance(self.max_prepaid_duration, Unset):
|
|
139
|
+
max_prepaid_duration = UNSET
|
|
140
|
+
else:
|
|
141
|
+
max_prepaid_duration = self.max_prepaid_duration
|
|
142
|
+
|
|
113
143
|
field_dict: dict[str, Any] = {}
|
|
114
144
|
field_dict.update(self.additional_properties)
|
|
115
145
|
field_dict.update(
|
|
@@ -142,6 +172,14 @@ class UpdateOfferingComponentRequest:
|
|
|
142
172
|
field_dict["is_boolean"] = is_boolean
|
|
143
173
|
if default_limit is not UNSET:
|
|
144
174
|
field_dict["default_limit"] = default_limit
|
|
175
|
+
if is_prepaid is not UNSET:
|
|
176
|
+
field_dict["is_prepaid"] = is_prepaid
|
|
177
|
+
if overage_component is not UNSET:
|
|
178
|
+
field_dict["overage_component"] = overage_component
|
|
179
|
+
if min_prepaid_duration is not UNSET:
|
|
180
|
+
field_dict["min_prepaid_duration"] = min_prepaid_duration
|
|
181
|
+
if max_prepaid_duration is not UNSET:
|
|
182
|
+
field_dict["max_prepaid_duration"] = max_prepaid_duration
|
|
145
183
|
|
|
146
184
|
return field_dict
|
|
147
185
|
|
|
@@ -236,6 +274,43 @@ class UpdateOfferingComponentRequest:
|
|
|
236
274
|
|
|
237
275
|
default_limit = _parse_default_limit(d.pop("default_limit", UNSET))
|
|
238
276
|
|
|
277
|
+
is_prepaid = d.pop("is_prepaid", UNSET)
|
|
278
|
+
|
|
279
|
+
def _parse_overage_component(data: object) -> Union[None, UUID, Unset]:
|
|
280
|
+
if data is None:
|
|
281
|
+
return data
|
|
282
|
+
if isinstance(data, Unset):
|
|
283
|
+
return data
|
|
284
|
+
try:
|
|
285
|
+
if not isinstance(data, str):
|
|
286
|
+
raise TypeError()
|
|
287
|
+
overage_component_type_0 = UUID(data)
|
|
288
|
+
|
|
289
|
+
return overage_component_type_0
|
|
290
|
+
except: # noqa: E722
|
|
291
|
+
pass
|
|
292
|
+
return cast(Union[None, UUID, Unset], data)
|
|
293
|
+
|
|
294
|
+
overage_component = _parse_overage_component(d.pop("overage_component", UNSET))
|
|
295
|
+
|
|
296
|
+
def _parse_min_prepaid_duration(data: object) -> Union[None, Unset, int]:
|
|
297
|
+
if data is None:
|
|
298
|
+
return data
|
|
299
|
+
if isinstance(data, Unset):
|
|
300
|
+
return data
|
|
301
|
+
return cast(Union[None, Unset, int], data)
|
|
302
|
+
|
|
303
|
+
min_prepaid_duration = _parse_min_prepaid_duration(d.pop("min_prepaid_duration", UNSET))
|
|
304
|
+
|
|
305
|
+
def _parse_max_prepaid_duration(data: object) -> Union[None, Unset, int]:
|
|
306
|
+
if data is None:
|
|
307
|
+
return data
|
|
308
|
+
if isinstance(data, Unset):
|
|
309
|
+
return data
|
|
310
|
+
return cast(Union[None, Unset, int], data)
|
|
311
|
+
|
|
312
|
+
max_prepaid_duration = _parse_max_prepaid_duration(d.pop("max_prepaid_duration", UNSET))
|
|
313
|
+
|
|
239
314
|
update_offering_component_request = cls(
|
|
240
315
|
uuid=uuid,
|
|
241
316
|
billing_type=billing_type,
|
|
@@ -252,6 +327,10 @@ class UpdateOfferingComponentRequest:
|
|
|
252
327
|
max_available_limit=max_available_limit,
|
|
253
328
|
is_boolean=is_boolean,
|
|
254
329
|
default_limit=default_limit,
|
|
330
|
+
is_prepaid=is_prepaid,
|
|
331
|
+
overage_component=overage_component,
|
|
332
|
+
min_prepaid_duration=min_prepaid_duration,
|
|
333
|
+
max_prepaid_duration=max_prepaid_duration,
|
|
255
334
|
)
|
|
256
335
|
|
|
257
336
|
update_offering_component_request.additional_properties = d
|
|
@@ -20,22 +20,17 @@ T = TypeVar("T", bound="VMwareVirtualMachineCreateOrderAttributes")
|
|
|
20
20
|
|
|
21
21
|
@_attrs_define
|
|
22
22
|
class VMwareVirtualMachineCreateOrderAttributes:
|
|
23
|
-
"""
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
VMwareVirtualMachineCreateOrderAttributesGuestOsType3Type1]):
|
|
35
|
-
cores_per_socket (Union[Unset, int]): Number of cores per socket in a VM
|
|
36
|
-
template (Union[None, Unset, str]):
|
|
37
|
-
cluster (Union[None, Unset, str]):
|
|
38
|
-
datastore (Union[None, Unset, str]):
|
|
23
|
+
"""
|
|
24
|
+
Attributes:
|
|
25
|
+
name (str):
|
|
26
|
+
description (Union[Unset, str]):
|
|
27
|
+
guest_os (Union[None, Unset, VMwareVirtualMachineCreateOrderAttributesGuestOsType1,
|
|
28
|
+
VMwareVirtualMachineCreateOrderAttributesGuestOsType2Type1,
|
|
29
|
+
VMwareVirtualMachineCreateOrderAttributesGuestOsType3Type1]):
|
|
30
|
+
cores_per_socket (Union[Unset, int]): Number of cores per socket in a VM
|
|
31
|
+
template (Union[None, Unset, str]):
|
|
32
|
+
cluster (Union[None, Unset, str]):
|
|
33
|
+
datastore (Union[None, Unset, str]):
|
|
39
34
|
"""
|
|
40
35
|
|
|
41
36
|
name: str
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
T = TypeVar("T", bound="VersionAdoption")
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
@_attrs_define
|
|
11
|
+
class VersionAdoption:
|
|
12
|
+
"""
|
|
13
|
+
Attributes:
|
|
14
|
+
version (str):
|
|
15
|
+
users_count (int):
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
version: str
|
|
19
|
+
users_count: int
|
|
20
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
21
|
+
|
|
22
|
+
def to_dict(self) -> dict[str, Any]:
|
|
23
|
+
version = self.version
|
|
24
|
+
|
|
25
|
+
users_count = self.users_count
|
|
26
|
+
|
|
27
|
+
field_dict: dict[str, Any] = {}
|
|
28
|
+
field_dict.update(self.additional_properties)
|
|
29
|
+
field_dict.update(
|
|
30
|
+
{
|
|
31
|
+
"version": version,
|
|
32
|
+
"users_count": users_count,
|
|
33
|
+
}
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
return field_dict
|
|
37
|
+
|
|
38
|
+
@classmethod
|
|
39
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
40
|
+
d = dict(src_dict)
|
|
41
|
+
version = d.pop("version")
|
|
42
|
+
|
|
43
|
+
users_count = d.pop("users_count")
|
|
44
|
+
|
|
45
|
+
version_adoption = cls(
|
|
46
|
+
version=version,
|
|
47
|
+
users_count=users_count,
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
version_adoption.additional_properties = d
|
|
51
|
+
return version_adoption
|
|
52
|
+
|
|
53
|
+
@property
|
|
54
|
+
def additional_keys(self) -> list[str]:
|
|
55
|
+
return list(self.additional_properties.keys())
|
|
56
|
+
|
|
57
|
+
def __getitem__(self, key: str) -> Any:
|
|
58
|
+
return self.additional_properties[key]
|
|
59
|
+
|
|
60
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
61
|
+
self.additional_properties[key] = value
|
|
62
|
+
|
|
63
|
+
def __delitem__(self, key: str) -> None:
|
|
64
|
+
del self.additional_properties[key]
|
|
65
|
+
|
|
66
|
+
def __contains__(self, key: str) -> bool:
|
|
67
|
+
return key in self.additional_properties
|