waldur-api-client 7.8.1__py3-none-any.whl → 7.8.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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 +10 -13
- waldur_api_client/api/booking_resources/booking_resources_list.py +10 -13
- waldur_api_client/api/call_managing_organisations/call_managing_organisations_create.py +44 -7
- waldur_api_client/api/call_managing_organisations/call_managing_organisations_partial_update.py +46 -7
- waldur_api_client/api/call_managing_organisations/call_managing_organisations_update.py +44 -7
- waldur_api_client/api/checklists_admin/checklists_admin_checklist_questions.py +49 -0
- waldur_api_client/api/checklists_admin/checklists_admin_count.py +43 -0
- waldur_api_client/api/checklists_admin/checklists_admin_list.py +43 -0
- waldur_api_client/api/checklists_admin_categories/checklists_admin_categories_create.py +44 -7
- waldur_api_client/api/checklists_admin_categories/checklists_admin_categories_partial_update.py +44 -7
- waldur_api_client/api/checklists_admin_categories/checklists_admin_categories_update.py +44 -7
- waldur_api_client/api/customers/customers_create.py +44 -7
- waldur_api_client/api/customers/customers_partial_update.py +44 -7
- waldur_api_client/api/customers/customers_update.py +44 -7
- waldur_api_client/api/external_links/external_links_create.py +44 -7
- waldur_api_client/api/external_links/external_links_partial_update.py +44 -7
- waldur_api_client/api/external_links/external_links_update.py +44 -7
- waldur_api_client/api/invoices/invoices_paid.py +44 -7
- waldur_api_client/api/marketplace_categories/marketplace_categories_create.py +44 -7
- waldur_api_client/api/marketplace_categories/marketplace_categories_partial_update.py +44 -7
- waldur_api_client/api/marketplace_categories/marketplace_categories_update.py +44 -7
- waldur_api_client/api/marketplace_category_groups/marketplace_category_groups_create.py +44 -7
- waldur_api_client/api/marketplace_category_groups/marketplace_category_groups_partial_update.py +44 -7
- waldur_api_client/api/marketplace_category_groups/marketplace_category_groups_update.py +44 -7
- waldur_api_client/api/marketplace_offering_files/marketplace_offering_files_create.py +44 -7
- waldur_api_client/api/marketplace_orders/marketplace_orders_update_attachment.py +44 -7
- 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_create.py +44 -7
- waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_update_image.py +44 -7
- waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_update_thumbnail.py +30 -5
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +10 -13
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +10 -13
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_move_resource.py +22 -0
- waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +10 -13
- waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +10 -13
- waldur_api_client/api/marketplace_resources/marketplace_resources_move_resource.py +22 -0
- waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_create.py +44 -7
- waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_update.py +44 -7
- waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_create.py +44 -7
- waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_partial_update.py +44 -7
- waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_update.py +44 -7
- waldur_api_client/api/openstack_backups/openstack_backups_restore.py +10 -10
- waldur_api_client/api/override_settings/override_settings.py +30 -5
- waldur_api_client/api/payments/payments_create.py +44 -7
- waldur_api_client/api/payments/payments_partial_update.py +44 -7
- waldur_api_client/api/payments/payments_update.py +44 -7
- waldur_api_client/api/projects/projects_create.py +44 -7
- waldur_api_client/api/projects/projects_partial_update.py +44 -7
- waldur_api_client/api/projects/projects_update.py +44 -7
- waldur_api_client/api/proposal_proposals/proposal_proposals_attach_document.py +30 -5
- waldur_api_client/api/rancher_services/rancher_services_create.py +22 -22
- waldur_api_client/api/slurm_jobs/slurm_jobs_create.py +44 -7
- waldur_api_client/api/slurm_jobs/slurm_jobs_update.py +44 -7
- waldur_api_client/api/support_attachments/support_attachments_create.py +44 -7
- waldur_api_client/api/user_group_invitations/user_group_invitations_count.py +15 -0
- waldur_api_client/api/user_group_invitations/user_group_invitations_list.py +15 -0
- waldur_api_client/api/users/users_create.py +44 -7
- waldur_api_client/api/users/users_partial_update.py +44 -7
- waldur_api_client/api/users/users_update.py +44 -7
- waldur_api_client/models/__init__.py +172 -8
- waldur_api_client/models/agent_type_enum.py +13 -0
- waldur_api_client/models/attachment_request_form.py +70 -0
- waldur_api_client/models/attachment_request_multipart.py +83 -0
- 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_offerings_list_field_item.py +1 -0
- waldur_api_client/models/booking_offerings_retrieve_field_item.py +1 -0
- waldur_api_client/models/booking_resource.py +16 -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_managing_organisation_request_form.py +103 -0
- waldur_api_client/models/call_managing_organisation_request_multipart.py +122 -0
- waldur_api_client/models/call_round.py +11 -1
- waldur_api_client/models/category_group_request_form.py +103 -0
- waldur_api_client/models/category_group_request_multipart.py +122 -0
- waldur_api_client/models/checklist_category_request_form.py +103 -0
- waldur_api_client/models/checklist_category_request_multipart.py +122 -0
- waldur_api_client/models/checklists_admin_checklist_questions_checklist_type.py +11 -0
- waldur_api_client/models/checklists_admin_checklist_questions_checklist_type_in_item.py +11 -0
- waldur_api_client/models/checklists_admin_count_checklist_type.py +11 -0
- waldur_api_client/models/checklists_admin_count_checklist_type_in_item.py +11 -0
- waldur_api_client/models/checklists_admin_list_checklist_type.py +11 -0
- waldur_api_client/models/checklists_admin_list_checklist_type_in_item.py +11 -0
- waldur_api_client/models/constance_settings.py +18 -0
- waldur_api_client/models/constance_settings_request.py +18 -0
- waldur_api_client/models/constance_settings_request_form.py +1556 -0
- waldur_api_client/models/constance_settings_request_multipart.py +2187 -0
- waldur_api_client/models/customer.py +9 -0
- waldur_api_client/models/customer_request.py +9 -0
- waldur_api_client/models/customer_request_form.py +312 -0
- waldur_api_client/models/customer_request_multipart.py +394 -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/event_groups_enum.py +1 -0
- waldur_api_client/models/event_types_enum.py +2 -0
- waldur_api_client/models/external_link_request_form.py +111 -0
- waldur_api_client/models/external_link_request_multipart.py +132 -0
- waldur_api_client/models/firecrest_job_request_form.py +104 -0
- waldur_api_client/models/firecrest_job_request_multipart.py +127 -0
- waldur_api_client/models/generic_order_attributes.py +1 -2
- waldur_api_client/models/integration_status.py +21 -4
- 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_category_request_form.py +153 -0
- waldur_api_client/models/marketplace_category_request_multipart.py +187 -0
- 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_offerings_list_course_accounts_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_list_customer_service_accounts_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_list_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_list_project_service_accounts_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_stats_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_provider_offerings_user_has_resource_access_retrieve_field_item.py +1 -0
- 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_public_offerings_list_field_item.py +1 -0
- waldur_api_client/models/marketplace_public_offerings_retrieve_field_item.py +1 -0
- 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_offerings_list_field_item.py +1 -0
- waldur_api_client/models/merged_plugin_options.py +9 -0
- waldur_api_client/models/merged_plugin_options_request.py +9 -0
- waldur_api_client/models/move_resource_request.py +65 -0
- waldur_api_client/models/nested_round.py +9 -0
- waldur_api_client/models/nested_round_request.py +9 -0
- waldur_api_client/models/offering.py +20 -0
- waldur_api_client/models/offering_create.py +20 -0
- waldur_api_client/models/offering_create_request.py +20 -0
- waldur_api_client/models/offering_create_request_form.py +479 -0
- waldur_api_client/models/offering_create_request_form_limits.py +57 -0
- waldur_api_client/models/offering_create_request_multipart.py +599 -0
- waldur_api_client/models/offering_create_request_multipart_limits.py +57 -0
- waldur_api_client/models/offering_file_request_form.py +78 -0
- waldur_api_client/models/offering_file_request_multipart.py +93 -0
- waldur_api_client/models/offering_image_request_form.py +62 -0
- waldur_api_client/models/offering_image_request_multipart.py +73 -0
- waldur_api_client/models/offering_thumbnail_request_form.py +62 -0
- waldur_api_client/models/offering_thumbnail_request_multipart.py +73 -0
- waldur_api_client/models/offering_user.py +5 -5
- waldur_api_client/models/{offering_user_state_enum.py → offering_user_state.py} +1 -1
- 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_nested_security_group_request.py → open_stack_create_floating_ip_request.py} +17 -6
- 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_security_group_hyperlink_request.py +59 -0
- 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_attachment_request_form.py +84 -0
- waldur_api_client/models/order_attachment_request_multipart.py +98 -0
- waldur_api_client/models/order_create.py +8 -0
- waldur_api_client/models/order_details.py +16 -34
- waldur_api_client/models/paid_request_form.py +81 -0
- waldur_api_client/models/paid_request_multipart.py +94 -0
- waldur_api_client/models/patched_call_managing_organisation_request_form.py +92 -0
- waldur_api_client/models/patched_call_managing_organisation_request_multipart.py +109 -0
- waldur_api_client/models/patched_category_group_request_form.py +101 -0
- waldur_api_client/models/patched_category_group_request_multipart.py +121 -0
- waldur_api_client/models/patched_checklist_category_request_form.py +102 -0
- waldur_api_client/models/patched_checklist_category_request_multipart.py +122 -0
- waldur_api_client/models/patched_customer_request.py +9 -0
- waldur_api_client/models/patched_customer_request_form.py +310 -0
- waldur_api_client/models/patched_customer_request_multipart.py +393 -0
- waldur_api_client/models/patched_external_link_request_form.py +110 -0
- waldur_api_client/models/patched_external_link_request_multipart.py +133 -0
- waldur_api_client/models/patched_marketplace_category_request_form.py +151 -0
- waldur_api_client/models/patched_marketplace_category_request_multipart.py +186 -0
- waldur_api_client/models/patched_open_stack_instance_request.py +1 -67
- waldur_api_client/models/patched_payment_request_form.py +119 -0
- waldur_api_client/models/patched_payment_request_multipart.py +142 -0
- waldur_api_client/models/patched_project_request_form.py +279 -0
- waldur_api_client/models/patched_project_request_multipart.py +342 -0
- waldur_api_client/models/patched_service_provider_request_form.py +101 -0
- waldur_api_client/models/patched_service_provider_request_multipart.py +121 -0
- waldur_api_client/models/patched_user_request_form.py +241 -0
- waldur_api_client/models/patched_user_request_multipart.py +306 -0
- waldur_api_client/models/payment_request_form.py +113 -0
- waldur_api_client/models/payment_request_multipart.py +134 -0
- waldur_api_client/models/{rancher_nested_security_group.py → project_hyperlink_request.py} +5 -5
- waldur_api_client/models/project_request_form.py +280 -0
- waldur_api_client/models/project_request_multipart.py +341 -0
- waldur_api_client/models/project_user.py +9 -0
- waldur_api_client/models/proposal.py +8 -0
- waldur_api_client/models/proposal_documentation_request_form.py +84 -0
- waldur_api_client/models/proposal_documentation_request_multipart.py +98 -0
- waldur_api_client/models/proposal_proposals_count_o_item.py +3 -1
- waldur_api_client/models/proposal_proposals_list_o_item.py +3 -1
- waldur_api_client/models/proposal_review.py +40 -0
- waldur_api_client/models/protected_proposal_list.py +8 -0
- waldur_api_client/models/protected_proposal_list_request.py +8 -0
- waldur_api_client/models/protected_round.py +8 -0
- waldur_api_client/models/provider_offering.py +21 -1
- waldur_api_client/models/provider_offering_details.py +20 -0
- waldur_api_client/models/public_offering_details.py +20 -0
- 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 +16 -34
- waldur_api_client/models/robot_account_details.py +22 -13
- waldur_api_client/models/screenshot_request_form.py +87 -0
- waldur_api_client/models/screenshot_request_multipart.py +105 -0
- waldur_api_client/models/service_provider_request_form.py +112 -0
- waldur_api_client/models/service_provider_request_multipart.py +134 -0
- waldur_api_client/models/slurm_invoices_slurm_package_create_order_attributes.py +4 -9
- waldur_api_client/models/user_request_form.py +250 -0
- waldur_api_client/models/user_request_multipart.py +316 -0
- waldur_api_client/models/v_mware_virtual_machine_create_order_attributes.py +11 -16
- 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.1.dist-info → waldur_api_client-7.8.3.dist-info}/METADATA +1 -1
- {waldur_api_client-7.8.1.dist-info → waldur_api_client-7.8.3.dist-info}/RECORD +233 -153
- waldur_api_client/models/open_stack_data_volume.py +0 -81
- {waldur_api_client-7.8.1.dist-info → waldur_api_client-7.8.3.dist-info}/WHEEL +0 -0
- {waldur_api_client-7.8.1.dist-info → waldur_api_client-7.8.3.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from io import BytesIO
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from .. import types
|
|
9
|
+
from ..types import UNSET, File, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="PatchedMarketplaceCategoryRequestForm")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class PatchedMarketplaceCategoryRequestForm:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
title (Union[Unset, str]):
|
|
19
|
+
description (Union[Unset, str]):
|
|
20
|
+
icon (Union[File, None, Unset]):
|
|
21
|
+
default_vm_category (Union[Unset, bool]): Set to "true" if this category is for OpenStack VM. Only one category
|
|
22
|
+
can have "true" value.
|
|
23
|
+
default_volume_category (Union[Unset, bool]): Set to true if this category is for OpenStack Volume. Only one
|
|
24
|
+
category can have "true" value.
|
|
25
|
+
default_tenant_category (Union[Unset, bool]): Set to true if this category is for OpenStack Tenant. Only one
|
|
26
|
+
category can have "true" value.
|
|
27
|
+
group (Union[None, Unset, str]):
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
title: Union[Unset, str] = UNSET
|
|
31
|
+
description: Union[Unset, str] = UNSET
|
|
32
|
+
icon: Union[File, None, Unset] = UNSET
|
|
33
|
+
default_vm_category: Union[Unset, bool] = UNSET
|
|
34
|
+
default_volume_category: Union[Unset, bool] = UNSET
|
|
35
|
+
default_tenant_category: Union[Unset, bool] = UNSET
|
|
36
|
+
group: Union[None, Unset, str] = UNSET
|
|
37
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
38
|
+
|
|
39
|
+
def to_dict(self) -> dict[str, Any]:
|
|
40
|
+
title = self.title
|
|
41
|
+
|
|
42
|
+
description = self.description
|
|
43
|
+
|
|
44
|
+
icon: Union[None, Unset, types.FileTypes]
|
|
45
|
+
if isinstance(self.icon, Unset):
|
|
46
|
+
icon = UNSET
|
|
47
|
+
elif isinstance(self.icon, File):
|
|
48
|
+
icon = self.icon.to_tuple()
|
|
49
|
+
|
|
50
|
+
else:
|
|
51
|
+
icon = self.icon
|
|
52
|
+
|
|
53
|
+
default_vm_category = self.default_vm_category
|
|
54
|
+
|
|
55
|
+
default_volume_category = self.default_volume_category
|
|
56
|
+
|
|
57
|
+
default_tenant_category = self.default_tenant_category
|
|
58
|
+
|
|
59
|
+
group: Union[None, Unset, str]
|
|
60
|
+
if isinstance(self.group, Unset):
|
|
61
|
+
group = UNSET
|
|
62
|
+
else:
|
|
63
|
+
group = self.group
|
|
64
|
+
|
|
65
|
+
field_dict: dict[str, Any] = {}
|
|
66
|
+
field_dict.update(self.additional_properties)
|
|
67
|
+
field_dict.update({})
|
|
68
|
+
if title is not UNSET:
|
|
69
|
+
field_dict["title"] = title
|
|
70
|
+
if description is not UNSET:
|
|
71
|
+
field_dict["description"] = description
|
|
72
|
+
if icon is not UNSET:
|
|
73
|
+
field_dict["icon"] = icon
|
|
74
|
+
if default_vm_category is not UNSET:
|
|
75
|
+
field_dict["default_vm_category"] = default_vm_category
|
|
76
|
+
if default_volume_category is not UNSET:
|
|
77
|
+
field_dict["default_volume_category"] = default_volume_category
|
|
78
|
+
if default_tenant_category is not UNSET:
|
|
79
|
+
field_dict["default_tenant_category"] = default_tenant_category
|
|
80
|
+
if group is not UNSET:
|
|
81
|
+
field_dict["group"] = group
|
|
82
|
+
|
|
83
|
+
return field_dict
|
|
84
|
+
|
|
85
|
+
@classmethod
|
|
86
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
87
|
+
d = dict(src_dict)
|
|
88
|
+
title = d.pop("title", UNSET)
|
|
89
|
+
|
|
90
|
+
description = d.pop("description", UNSET)
|
|
91
|
+
|
|
92
|
+
def _parse_icon(data: object) -> Union[File, None, Unset]:
|
|
93
|
+
if data is None:
|
|
94
|
+
return data
|
|
95
|
+
if isinstance(data, Unset):
|
|
96
|
+
return data
|
|
97
|
+
try:
|
|
98
|
+
if not isinstance(data, bytes):
|
|
99
|
+
raise TypeError()
|
|
100
|
+
icon_type_0 = File(payload=BytesIO(data))
|
|
101
|
+
|
|
102
|
+
return icon_type_0
|
|
103
|
+
except: # noqa: E722
|
|
104
|
+
pass
|
|
105
|
+
return cast(Union[File, None, Unset], data)
|
|
106
|
+
|
|
107
|
+
icon = _parse_icon(d.pop("icon", UNSET))
|
|
108
|
+
|
|
109
|
+
default_vm_category = d.pop("default_vm_category", UNSET)
|
|
110
|
+
|
|
111
|
+
default_volume_category = d.pop("default_volume_category", UNSET)
|
|
112
|
+
|
|
113
|
+
default_tenant_category = d.pop("default_tenant_category", UNSET)
|
|
114
|
+
|
|
115
|
+
def _parse_group(data: object) -> Union[None, Unset, str]:
|
|
116
|
+
if data is None:
|
|
117
|
+
return data
|
|
118
|
+
if isinstance(data, Unset):
|
|
119
|
+
return data
|
|
120
|
+
return cast(Union[None, Unset, str], data)
|
|
121
|
+
|
|
122
|
+
group = _parse_group(d.pop("group", UNSET))
|
|
123
|
+
|
|
124
|
+
patched_marketplace_category_request_form = cls(
|
|
125
|
+
title=title,
|
|
126
|
+
description=description,
|
|
127
|
+
icon=icon,
|
|
128
|
+
default_vm_category=default_vm_category,
|
|
129
|
+
default_volume_category=default_volume_category,
|
|
130
|
+
default_tenant_category=default_tenant_category,
|
|
131
|
+
group=group,
|
|
132
|
+
)
|
|
133
|
+
|
|
134
|
+
patched_marketplace_category_request_form.additional_properties = d
|
|
135
|
+
return patched_marketplace_category_request_form
|
|
136
|
+
|
|
137
|
+
@property
|
|
138
|
+
def additional_keys(self) -> list[str]:
|
|
139
|
+
return list(self.additional_properties.keys())
|
|
140
|
+
|
|
141
|
+
def __getitem__(self, key: str) -> Any:
|
|
142
|
+
return self.additional_properties[key]
|
|
143
|
+
|
|
144
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
145
|
+
self.additional_properties[key] = value
|
|
146
|
+
|
|
147
|
+
def __delitem__(self, key: str) -> None:
|
|
148
|
+
del self.additional_properties[key]
|
|
149
|
+
|
|
150
|
+
def __contains__(self, key: str) -> bool:
|
|
151
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from io import BytesIO
|
|
3
|
+
from typing import Any, TypeVar, Union, cast
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from .. import types
|
|
9
|
+
from ..types import UNSET, File, Unset
|
|
10
|
+
|
|
11
|
+
T = TypeVar("T", bound="PatchedMarketplaceCategoryRequestMultipart")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
@_attrs_define
|
|
15
|
+
class PatchedMarketplaceCategoryRequestMultipart:
|
|
16
|
+
"""
|
|
17
|
+
Attributes:
|
|
18
|
+
title (Union[Unset, str]):
|
|
19
|
+
description (Union[Unset, str]):
|
|
20
|
+
icon (Union[File, None, Unset]):
|
|
21
|
+
default_vm_category (Union[Unset, bool]): Set to "true" if this category is for OpenStack VM. Only one category
|
|
22
|
+
can have "true" value.
|
|
23
|
+
default_volume_category (Union[Unset, bool]): Set to true if this category is for OpenStack Volume. Only one
|
|
24
|
+
category can have "true" value.
|
|
25
|
+
default_tenant_category (Union[Unset, bool]): Set to true if this category is for OpenStack Tenant. Only one
|
|
26
|
+
category can have "true" value.
|
|
27
|
+
group (Union[None, Unset, str]):
|
|
28
|
+
"""
|
|
29
|
+
|
|
30
|
+
title: Union[Unset, str] = UNSET
|
|
31
|
+
description: Union[Unset, str] = UNSET
|
|
32
|
+
icon: Union[File, None, Unset] = UNSET
|
|
33
|
+
default_vm_category: Union[Unset, bool] = UNSET
|
|
34
|
+
default_volume_category: Union[Unset, bool] = UNSET
|
|
35
|
+
default_tenant_category: Union[Unset, bool] = UNSET
|
|
36
|
+
group: Union[None, Unset, str] = UNSET
|
|
37
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
38
|
+
|
|
39
|
+
def to_dict(self) -> dict[str, Any]:
|
|
40
|
+
title = self.title
|
|
41
|
+
|
|
42
|
+
description = self.description
|
|
43
|
+
|
|
44
|
+
icon: Union[None, Unset, types.FileTypes]
|
|
45
|
+
if isinstance(self.icon, Unset):
|
|
46
|
+
icon = UNSET
|
|
47
|
+
elif isinstance(self.icon, File):
|
|
48
|
+
icon = self.icon.to_tuple()
|
|
49
|
+
|
|
50
|
+
else:
|
|
51
|
+
icon = self.icon
|
|
52
|
+
|
|
53
|
+
default_vm_category = self.default_vm_category
|
|
54
|
+
|
|
55
|
+
default_volume_category = self.default_volume_category
|
|
56
|
+
|
|
57
|
+
default_tenant_category = self.default_tenant_category
|
|
58
|
+
|
|
59
|
+
group: Union[None, Unset, str]
|
|
60
|
+
if isinstance(self.group, Unset):
|
|
61
|
+
group = UNSET
|
|
62
|
+
else:
|
|
63
|
+
group = self.group
|
|
64
|
+
|
|
65
|
+
field_dict: dict[str, Any] = {}
|
|
66
|
+
field_dict.update(self.additional_properties)
|
|
67
|
+
field_dict.update({})
|
|
68
|
+
if title is not UNSET:
|
|
69
|
+
field_dict["title"] = title
|
|
70
|
+
if description is not UNSET:
|
|
71
|
+
field_dict["description"] = description
|
|
72
|
+
if icon is not UNSET:
|
|
73
|
+
field_dict["icon"] = icon
|
|
74
|
+
if default_vm_category is not UNSET:
|
|
75
|
+
field_dict["default_vm_category"] = default_vm_category
|
|
76
|
+
if default_volume_category is not UNSET:
|
|
77
|
+
field_dict["default_volume_category"] = default_volume_category
|
|
78
|
+
if default_tenant_category is not UNSET:
|
|
79
|
+
field_dict["default_tenant_category"] = default_tenant_category
|
|
80
|
+
if group is not UNSET:
|
|
81
|
+
field_dict["group"] = group
|
|
82
|
+
|
|
83
|
+
return field_dict
|
|
84
|
+
|
|
85
|
+
def to_multipart(self) -> types.RequestFiles:
|
|
86
|
+
files: types.RequestFiles = []
|
|
87
|
+
|
|
88
|
+
if not isinstance(self.title, Unset):
|
|
89
|
+
files.append(("title", (None, str(self.title).encode(), "text/plain")))
|
|
90
|
+
|
|
91
|
+
if not isinstance(self.description, Unset):
|
|
92
|
+
files.append(("description", (None, str(self.description).encode(), "text/plain")))
|
|
93
|
+
|
|
94
|
+
if not isinstance(self.icon, Unset):
|
|
95
|
+
if isinstance(self.icon, File):
|
|
96
|
+
files.append(("icon", self.icon.to_tuple()))
|
|
97
|
+
else:
|
|
98
|
+
files.append(("icon", (None, str(self.icon).encode(), "text/plain")))
|
|
99
|
+
|
|
100
|
+
if not isinstance(self.default_vm_category, Unset):
|
|
101
|
+
files.append(("default_vm_category", (None, str(self.default_vm_category).encode(), "text/plain")))
|
|
102
|
+
|
|
103
|
+
if not isinstance(self.default_volume_category, Unset):
|
|
104
|
+
files.append(("default_volume_category", (None, str(self.default_volume_category).encode(), "text/plain")))
|
|
105
|
+
|
|
106
|
+
if not isinstance(self.default_tenant_category, Unset):
|
|
107
|
+
files.append(("default_tenant_category", (None, str(self.default_tenant_category).encode(), "text/plain")))
|
|
108
|
+
|
|
109
|
+
if not isinstance(self.group, Unset):
|
|
110
|
+
if isinstance(self.group, str):
|
|
111
|
+
files.append(("group", (None, str(self.group).encode(), "text/plain")))
|
|
112
|
+
else:
|
|
113
|
+
files.append(("group", (None, str(self.group).encode(), "text/plain")))
|
|
114
|
+
|
|
115
|
+
for prop_name, prop in self.additional_properties.items():
|
|
116
|
+
files.append((prop_name, (None, str(prop).encode(), "text/plain")))
|
|
117
|
+
|
|
118
|
+
return files
|
|
119
|
+
|
|
120
|
+
@classmethod
|
|
121
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
122
|
+
d = dict(src_dict)
|
|
123
|
+
title = d.pop("title", UNSET)
|
|
124
|
+
|
|
125
|
+
description = d.pop("description", UNSET)
|
|
126
|
+
|
|
127
|
+
def _parse_icon(data: object) -> Union[File, None, Unset]:
|
|
128
|
+
if data is None:
|
|
129
|
+
return data
|
|
130
|
+
if isinstance(data, Unset):
|
|
131
|
+
return data
|
|
132
|
+
try:
|
|
133
|
+
if not isinstance(data, bytes):
|
|
134
|
+
raise TypeError()
|
|
135
|
+
icon_type_0 = File(payload=BytesIO(data))
|
|
136
|
+
|
|
137
|
+
return icon_type_0
|
|
138
|
+
except: # noqa: E722
|
|
139
|
+
pass
|
|
140
|
+
return cast(Union[File, None, Unset], data)
|
|
141
|
+
|
|
142
|
+
icon = _parse_icon(d.pop("icon", UNSET))
|
|
143
|
+
|
|
144
|
+
default_vm_category = d.pop("default_vm_category", UNSET)
|
|
145
|
+
|
|
146
|
+
default_volume_category = d.pop("default_volume_category", UNSET)
|
|
147
|
+
|
|
148
|
+
default_tenant_category = d.pop("default_tenant_category", UNSET)
|
|
149
|
+
|
|
150
|
+
def _parse_group(data: object) -> Union[None, Unset, str]:
|
|
151
|
+
if data is None:
|
|
152
|
+
return data
|
|
153
|
+
if isinstance(data, Unset):
|
|
154
|
+
return data
|
|
155
|
+
return cast(Union[None, Unset, str], data)
|
|
156
|
+
|
|
157
|
+
group = _parse_group(d.pop("group", UNSET))
|
|
158
|
+
|
|
159
|
+
patched_marketplace_category_request_multipart = cls(
|
|
160
|
+
title=title,
|
|
161
|
+
description=description,
|
|
162
|
+
icon=icon,
|
|
163
|
+
default_vm_category=default_vm_category,
|
|
164
|
+
default_volume_category=default_volume_category,
|
|
165
|
+
default_tenant_category=default_tenant_category,
|
|
166
|
+
group=group,
|
|
167
|
+
)
|
|
168
|
+
|
|
169
|
+
patched_marketplace_category_request_multipart.additional_properties = d
|
|
170
|
+
return patched_marketplace_category_request_multipart
|
|
171
|
+
|
|
172
|
+
@property
|
|
173
|
+
def additional_keys(self) -> list[str]:
|
|
174
|
+
return list(self.additional_properties.keys())
|
|
175
|
+
|
|
176
|
+
def __getitem__(self, key: str) -> Any:
|
|
177
|
+
return self.additional_properties[key]
|
|
178
|
+
|
|
179
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
180
|
+
self.additional_properties[key] = value
|
|
181
|
+
|
|
182
|
+
def __delitem__(self, key: str) -> None:
|
|
183
|
+
del self.additional_properties[key]
|
|
184
|
+
|
|
185
|
+
def __contains__(self, key: str) -> bool:
|
|
186
|
+
return key in self.additional_properties
|
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
from collections.abc import Mapping
|
|
2
|
-
from typing import
|
|
2
|
+
from typing import Any, TypeVar, Union
|
|
3
3
|
|
|
4
4
|
from attrs import define as _attrs_define
|
|
5
5
|
from attrs import field as _attrs_field
|
|
6
6
|
|
|
7
7
|
from ..types import UNSET, Unset
|
|
8
8
|
|
|
9
|
-
if TYPE_CHECKING:
|
|
10
|
-
from ..models.open_stack_data_volume_request import OpenStackDataVolumeRequest
|
|
11
|
-
|
|
12
|
-
|
|
13
9
|
T = TypeVar("T", bound="PatchedOpenStackInstanceRequest")
|
|
14
10
|
|
|
15
11
|
|
|
@@ -19,17 +15,10 @@ class PatchedOpenStackInstanceRequest:
|
|
|
19
15
|
Attributes:
|
|
20
16
|
name (Union[Unset, str]):
|
|
21
17
|
description (Union[Unset, str]):
|
|
22
|
-
system_volume_type (Union[None, Unset, str]): Volume type for the system volume
|
|
23
|
-
data_volume_type (Union[None, Unset, str]): Volume type for the data volume
|
|
24
|
-
data_volumes (Union[Unset, list['OpenStackDataVolumeRequest']]): Additional data volumes to attach to the
|
|
25
|
-
instance
|
|
26
18
|
"""
|
|
27
19
|
|
|
28
20
|
name: Union[Unset, str] = UNSET
|
|
29
21
|
description: Union[Unset, str] = UNSET
|
|
30
|
-
system_volume_type: Union[None, Unset, str] = UNSET
|
|
31
|
-
data_volume_type: Union[None, Unset, str] = UNSET
|
|
32
|
-
data_volumes: Union[Unset, list["OpenStackDataVolumeRequest"]] = UNSET
|
|
33
22
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
34
23
|
|
|
35
24
|
def to_dict(self) -> dict[str, Any]:
|
|
@@ -37,25 +26,6 @@ class PatchedOpenStackInstanceRequest:
|
|
|
37
26
|
|
|
38
27
|
description = self.description
|
|
39
28
|
|
|
40
|
-
system_volume_type: Union[None, Unset, str]
|
|
41
|
-
if isinstance(self.system_volume_type, Unset):
|
|
42
|
-
system_volume_type = UNSET
|
|
43
|
-
else:
|
|
44
|
-
system_volume_type = self.system_volume_type
|
|
45
|
-
|
|
46
|
-
data_volume_type: Union[None, Unset, str]
|
|
47
|
-
if isinstance(self.data_volume_type, Unset):
|
|
48
|
-
data_volume_type = UNSET
|
|
49
|
-
else:
|
|
50
|
-
data_volume_type = self.data_volume_type
|
|
51
|
-
|
|
52
|
-
data_volumes: Union[Unset, list[dict[str, Any]]] = UNSET
|
|
53
|
-
if not isinstance(self.data_volumes, Unset):
|
|
54
|
-
data_volumes = []
|
|
55
|
-
for data_volumes_item_data in self.data_volumes:
|
|
56
|
-
data_volumes_item = data_volumes_item_data.to_dict()
|
|
57
|
-
data_volumes.append(data_volumes_item)
|
|
58
|
-
|
|
59
29
|
field_dict: dict[str, Any] = {}
|
|
60
30
|
field_dict.update(self.additional_properties)
|
|
61
31
|
field_dict.update({})
|
|
@@ -63,55 +33,19 @@ class PatchedOpenStackInstanceRequest:
|
|
|
63
33
|
field_dict["name"] = name
|
|
64
34
|
if description is not UNSET:
|
|
65
35
|
field_dict["description"] = description
|
|
66
|
-
if system_volume_type is not UNSET:
|
|
67
|
-
field_dict["system_volume_type"] = system_volume_type
|
|
68
|
-
if data_volume_type is not UNSET:
|
|
69
|
-
field_dict["data_volume_type"] = data_volume_type
|
|
70
|
-
if data_volumes is not UNSET:
|
|
71
|
-
field_dict["data_volumes"] = data_volumes
|
|
72
36
|
|
|
73
37
|
return field_dict
|
|
74
38
|
|
|
75
39
|
@classmethod
|
|
76
40
|
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
77
|
-
from ..models.open_stack_data_volume_request import OpenStackDataVolumeRequest
|
|
78
|
-
|
|
79
41
|
d = dict(src_dict)
|
|
80
42
|
name = d.pop("name", UNSET)
|
|
81
43
|
|
|
82
44
|
description = d.pop("description", UNSET)
|
|
83
45
|
|
|
84
|
-
def _parse_system_volume_type(data: object) -> Union[None, Unset, str]:
|
|
85
|
-
if data is None:
|
|
86
|
-
return data
|
|
87
|
-
if isinstance(data, Unset):
|
|
88
|
-
return data
|
|
89
|
-
return cast(Union[None, Unset, str], data)
|
|
90
|
-
|
|
91
|
-
system_volume_type = _parse_system_volume_type(d.pop("system_volume_type", UNSET))
|
|
92
|
-
|
|
93
|
-
def _parse_data_volume_type(data: object) -> Union[None, Unset, str]:
|
|
94
|
-
if data is None:
|
|
95
|
-
return data
|
|
96
|
-
if isinstance(data, Unset):
|
|
97
|
-
return data
|
|
98
|
-
return cast(Union[None, Unset, str], data)
|
|
99
|
-
|
|
100
|
-
data_volume_type = _parse_data_volume_type(d.pop("data_volume_type", UNSET))
|
|
101
|
-
|
|
102
|
-
data_volumes = []
|
|
103
|
-
_data_volumes = d.pop("data_volumes", UNSET)
|
|
104
|
-
for data_volumes_item_data in _data_volumes or []:
|
|
105
|
-
data_volumes_item = OpenStackDataVolumeRequest.from_dict(data_volumes_item_data)
|
|
106
|
-
|
|
107
|
-
data_volumes.append(data_volumes_item)
|
|
108
|
-
|
|
109
46
|
patched_open_stack_instance_request = cls(
|
|
110
47
|
name=name,
|
|
111
48
|
description=description,
|
|
112
|
-
system_volume_type=system_volume_type,
|
|
113
|
-
data_volume_type=data_volume_type,
|
|
114
|
-
data_volumes=data_volumes,
|
|
115
49
|
)
|
|
116
50
|
|
|
117
51
|
patched_open_stack_instance_request.additional_properties = d
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from collections.abc import Mapping
|
|
3
|
+
from io import BytesIO
|
|
4
|
+
from typing import Any, TypeVar, Union, cast
|
|
5
|
+
|
|
6
|
+
from attrs import define as _attrs_define
|
|
7
|
+
from attrs import field as _attrs_field
|
|
8
|
+
from dateutil.parser import isoparse
|
|
9
|
+
|
|
10
|
+
from .. import types
|
|
11
|
+
from ..types import UNSET, File, Unset
|
|
12
|
+
|
|
13
|
+
T = TypeVar("T", bound="PatchedPaymentRequestForm")
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
@_attrs_define
|
|
17
|
+
class PatchedPaymentRequestForm:
|
|
18
|
+
"""
|
|
19
|
+
Attributes:
|
|
20
|
+
profile (Union[Unset, str]):
|
|
21
|
+
date_of_payment (Union[Unset, datetime.date]):
|
|
22
|
+
sum_ (Union[Unset, str]):
|
|
23
|
+
proof (Union[File, None, Unset]):
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
profile: Union[Unset, str] = UNSET
|
|
27
|
+
date_of_payment: Union[Unset, datetime.date] = UNSET
|
|
28
|
+
sum_: Union[Unset, str] = UNSET
|
|
29
|
+
proof: Union[File, None, Unset] = UNSET
|
|
30
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
31
|
+
|
|
32
|
+
def to_dict(self) -> dict[str, Any]:
|
|
33
|
+
profile = self.profile
|
|
34
|
+
|
|
35
|
+
date_of_payment: Union[Unset, str] = UNSET
|
|
36
|
+
if not isinstance(self.date_of_payment, Unset):
|
|
37
|
+
date_of_payment = self.date_of_payment.isoformat()
|
|
38
|
+
|
|
39
|
+
sum_ = self.sum_
|
|
40
|
+
|
|
41
|
+
proof: Union[None, Unset, types.FileTypes]
|
|
42
|
+
if isinstance(self.proof, Unset):
|
|
43
|
+
proof = UNSET
|
|
44
|
+
elif isinstance(self.proof, File):
|
|
45
|
+
proof = self.proof.to_tuple()
|
|
46
|
+
|
|
47
|
+
else:
|
|
48
|
+
proof = self.proof
|
|
49
|
+
|
|
50
|
+
field_dict: dict[str, Any] = {}
|
|
51
|
+
field_dict.update(self.additional_properties)
|
|
52
|
+
field_dict.update({})
|
|
53
|
+
if profile is not UNSET:
|
|
54
|
+
field_dict["profile"] = profile
|
|
55
|
+
if date_of_payment is not UNSET:
|
|
56
|
+
field_dict["date_of_payment"] = date_of_payment
|
|
57
|
+
if sum_ is not UNSET:
|
|
58
|
+
field_dict["sum"] = sum_
|
|
59
|
+
if proof is not UNSET:
|
|
60
|
+
field_dict["proof"] = proof
|
|
61
|
+
|
|
62
|
+
return field_dict
|
|
63
|
+
|
|
64
|
+
@classmethod
|
|
65
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
66
|
+
d = dict(src_dict)
|
|
67
|
+
profile = d.pop("profile", UNSET)
|
|
68
|
+
|
|
69
|
+
_date_of_payment = d.pop("date_of_payment", UNSET)
|
|
70
|
+
date_of_payment: Union[Unset, datetime.date]
|
|
71
|
+
if isinstance(_date_of_payment, Unset):
|
|
72
|
+
date_of_payment = UNSET
|
|
73
|
+
else:
|
|
74
|
+
date_of_payment = isoparse(_date_of_payment).date()
|
|
75
|
+
|
|
76
|
+
sum_ = d.pop("sum", UNSET)
|
|
77
|
+
|
|
78
|
+
def _parse_proof(data: object) -> Union[File, None, Unset]:
|
|
79
|
+
if data is None:
|
|
80
|
+
return data
|
|
81
|
+
if isinstance(data, Unset):
|
|
82
|
+
return data
|
|
83
|
+
try:
|
|
84
|
+
if not isinstance(data, bytes):
|
|
85
|
+
raise TypeError()
|
|
86
|
+
proof_type_0 = File(payload=BytesIO(data))
|
|
87
|
+
|
|
88
|
+
return proof_type_0
|
|
89
|
+
except: # noqa: E722
|
|
90
|
+
pass
|
|
91
|
+
return cast(Union[File, None, Unset], data)
|
|
92
|
+
|
|
93
|
+
proof = _parse_proof(d.pop("proof", UNSET))
|
|
94
|
+
|
|
95
|
+
patched_payment_request_form = cls(
|
|
96
|
+
profile=profile,
|
|
97
|
+
date_of_payment=date_of_payment,
|
|
98
|
+
sum_=sum_,
|
|
99
|
+
proof=proof,
|
|
100
|
+
)
|
|
101
|
+
|
|
102
|
+
patched_payment_request_form.additional_properties = d
|
|
103
|
+
return patched_payment_request_form
|
|
104
|
+
|
|
105
|
+
@property
|
|
106
|
+
def additional_keys(self) -> list[str]:
|
|
107
|
+
return list(self.additional_properties.keys())
|
|
108
|
+
|
|
109
|
+
def __getitem__(self, key: str) -> Any:
|
|
110
|
+
return self.additional_properties[key]
|
|
111
|
+
|
|
112
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
113
|
+
self.additional_properties[key] = value
|
|
114
|
+
|
|
115
|
+
def __delitem__(self, key: str) -> None:
|
|
116
|
+
del self.additional_properties[key]
|
|
117
|
+
|
|
118
|
+
def __contains__(self, key: str) -> bool:
|
|
119
|
+
return key in self.additional_properties
|