waldur-api-client 7.7.5__py3-none-any.whl → 7.7.7__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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 +34 -11
- waldur_api_client/api/booking_resources/booking_resources_list.py +34 -11
- waldur_api_client/api/customers/customers_project_metadata_compliance_details_list.py +189 -0
- waldur_api_client/api/customers/customers_project_metadata_compliance_overview_list.py +189 -0
- waldur_api_client/api/customers/customers_project_metadata_compliance_projects_list.py +187 -0
- waldur_api_client/api/customers/customers_project_metadata_question_answers_list.py +187 -0
- waldur_api_client/api/marketplace_integration_statuses/marketplace_integration_statuses_count.py +34 -11
- waldur_api_client/api/marketplace_integration_statuses/marketplace_integration_statuses_list.py +34 -11
- waldur_api_client/api/marketplace_offering_files/marketplace_offering_files_count.py +34 -11
- waldur_api_client/api/marketplace_offering_files/marketplace_offering_files_list.py +34 -11
- waldur_api_client/api/marketplace_offering_terms_of_service/__init__.py +1 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_count.py +274 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_create.py +152 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_destroy.py +89 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_list.py +277 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_partial_update.py +164 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_retrieve.py +142 -0
- waldur_api_client/api/marketplace_offering_terms_of_service/marketplace_offering_terms_of_service_update.py +164 -0
- waldur_api_client/api/marketplace_offering_user_roles/marketplace_offering_user_roles_count.py +34 -11
- waldur_api_client/api/marketplace_offering_user_roles/marketplace_offering_user_roles_list.py +34 -11
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_retrieve.py +154 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_review_retrieve.py +154 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_completion_review_status_retrieve.py +154 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_completion_status_retrieve.py +154 -0
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_count.py +34 -11
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_list.py +34 -11
- waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_submit_answers.py +179 -0
- waldur_api_client/api/marketplace_orders/marketplace_orders_count.py +19 -0
- waldur_api_client/api/marketplace_orders/marketplace_orders_list.py +19 -0
- waldur_api_client/api/marketplace_plans/marketplace_plans_count.py +19 -0
- waldur_api_client/api/marketplace_plans/marketplace_plans_list.py +19 -0
- waldur_api_client/api/marketplace_plans/marketplace_plans_usage_stats_count.py +19 -0
- waldur_api_client/api/marketplace_plans/marketplace_plans_usage_stats_list.py +19 -0
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +34 -11
- waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +34 -11
- waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +34 -11
- waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +34 -11
- waldur_api_client/api/marketplace_robot_accounts/marketplace_robot_accounts_list.py +23 -0
- waldur_api_client/api/marketplace_robot_accounts/marketplace_robot_accounts_retrieve.py +30 -1
- waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_count.py +34 -11
- waldur_api_client/api/marketplace_screenshots/marketplace_screenshots_list.py +34 -11
- waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_project_service_accounts_list.py +276 -0
- waldur_api_client/api/marketplace_service_providers/service_provider_compliance_overview.py +189 -0
- waldur_api_client/api/marketplace_service_providers/service_provider_offering_users_compliance.py +222 -0
- waldur_api_client/api/marketplace_user_offering_consents/__init__.py +1 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_count.py +307 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_create.py +152 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_destroy.py +89 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_list.py +310 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_partial_update.py +164 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_retrieve.py +142 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_revoke.py +146 -0
- waldur_api_client/api/marketplace_user_offering_consents/marketplace_user_offering_consents_update.py +164 -0
- waldur_api_client/api/public_maintenance_announcements/__init__.py +1 -0
- waldur_api_client/api/public_maintenance_announcements/public_maintenance_announcements_count.py +325 -0
- waldur_api_client/api/public_maintenance_announcements/public_maintenance_announcements_list.py +328 -0
- waldur_api_client/api/public_maintenance_announcements/public_maintenance_announcements_retrieve.py +144 -0
- waldur_api_client/api/remote_waldur_api/remote_waldur_api_remote_resource_order_status_retrieve.py +145 -0
- waldur_api_client/api/remote_waldur_api/remote_waldur_api_remote_resource_status_retrieve.py +147 -0
- waldur_api_client/api/remote_waldur_api/remote_waldur_api_remote_resource_team_status_list.py +188 -0
- waldur_api_client/models/__init__.py +118 -4
- waldur_api_client/models/admin_announcement.py +109 -1
- waldur_api_client/models/admin_announcement_maintenance_affected_offerings_item.py +103 -0
- waldur_api_client/models/admin_announcements_list_field_item.py +8 -0
- waldur_api_client/models/admin_announcements_retrieve_field_item.py +8 -0
- waldur_api_client/models/azure_sql_server_create_order_attributes.py +83 -0
- waldur_api_client/models/azure_virtual_machine_create_order_attributes.py +99 -0
- waldur_api_client/models/basic_user.py +30 -21
- waldur_api_client/models/booking_offerings_list_field_item.py +1 -2
- waldur_api_client/models/booking_offerings_retrieve_field_item.py +1 -2
- waldur_api_client/models/booking_resource.py +10 -9
- waldur_api_client/models/booking_resources_list_field_item.py +1 -1
- waldur_api_client/models/booking_resources_retrieve_field_item.py +1 -1
- waldur_api_client/models/checklist_info.py +76 -0
- waldur_api_client/models/compliance_overview.py +91 -0
- waldur_api_client/models/create_router.py +1 -1
- waldur_api_client/models/create_router_request.py +1 -1
- waldur_api_client/models/customer.py +51 -0
- waldur_api_client/models/customers_list_field_item.py +2 -0
- waldur_api_client/models/customers_retrieve_field_item.py +2 -0
- waldur_api_client/models/fingerprint.py +19 -17
- waldur_api_client/models/generic_order_attributes.py +69 -0
- waldur_api_client/models/google_auth_authorize_retrieve_field_item.py +1 -0
- waldur_api_client/models/google_auth_list_field_item.py +1 -0
- waldur_api_client/models/google_auth_retrieve_field_item.py +1 -0
- waldur_api_client/models/google_credentials.py +9 -0
- waldur_api_client/models/group_invitation.py +24 -0
- waldur_api_client/models/group_invitation_request.py +10 -0
- waldur_api_client/models/instance_flavor_change_request.py +1 -1
- waldur_api_client/models/maintenance_announcement.py +8 -0
- waldur_api_client/models/marketplace_managed_rancher_create_order_attributes.py +144 -0
- waldur_api_client/models/marketplace_offering_terms_of_service_count_o_item.py +13 -0
- waldur_api_client/models/marketplace_offering_terms_of_service_list_o_item.py +13 -0
- waldur_api_client/models/marketplace_orders_list_field_item.py +1 -1
- waldur_api_client/models/marketplace_orders_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_provider_offerings_list_customer_service_accounts_retrieve_field_item.py +1 -2
- waldur_api_client/models/marketplace_provider_offerings_list_field_item.py +1 -2
- waldur_api_client/models/marketplace_provider_offerings_list_project_service_accounts_retrieve_field_item.py +1 -2
- waldur_api_client/models/marketplace_provider_offerings_retrieve_field_item.py +1 -2
- waldur_api_client/models/marketplace_provider_offerings_stats_retrieve_field_item.py +1 -2
- waldur_api_client/models/marketplace_provider_offerings_user_has_resource_access_retrieve_field_item.py +1 -2
- waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_provider_resources_list_field_item.py +1 -1
- waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_public_offerings_list_field_item.py +1 -2
- waldur_api_client/models/marketplace_public_offerings_retrieve_field_item.py +1 -2
- waldur_api_client/models/marketplace_rancher_create_order_attributes.py +145 -0
- waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_resources_list_field_item.py +1 -1
- waldur_api_client/models/marketplace_resources_retrieve_field_item.py +1 -1
- waldur_api_client/models/marketplace_robot_accounts_list_field_item.py +32 -0
- waldur_api_client/models/marketplace_robot_accounts_retrieve_field_item.py +32 -0
- waldur_api_client/models/marketplace_service_providers_list_field_item.py +1 -0
- waldur_api_client/models/marketplace_service_providers_retrieve_field_item.py +1 -0
- waldur_api_client/models/marketplace_user_offering_consents_count_o_item.py +15 -0
- waldur_api_client/models/marketplace_user_offering_consents_list_o_item.py +15 -0
- waldur_api_client/models/offering.py +9 -18
- waldur_api_client/models/offering_create.py +8 -18
- waldur_api_client/models/offering_create_request.py +0 -18
- waldur_api_client/models/offering_overview_update_request.py +0 -18
- waldur_api_client/models/offering_terms_of_service.py +142 -0
- waldur_api_client/models/offering_terms_of_service_create.py +107 -0
- waldur_api_client/models/offering_terms_of_service_create_request.py +107 -0
- waldur_api_client/models/offering_terms_of_service_request.py +96 -0
- waldur_api_client/models/open_stack_backend_instance.py +2 -2
- waldur_api_client/models/open_stack_backend_volumes.py +3 -3
- waldur_api_client/models/open_stack_backup.py +1 -1
- waldur_api_client/models/open_stack_backup_restoration.py +8 -5
- waldur_api_client/models/open_stack_backup_restoration_request.py +28 -3
- waldur_api_client/models/open_stack_fixed_ip.py +2 -2
- waldur_api_client/models/open_stack_fixed_ip_request.py +2 -2
- waldur_api_client/models/open_stack_floating_ip.py +5 -4
- waldur_api_client/models/open_stack_instance.py +17 -15
- waldur_api_client/models/open_stack_instance_allowed_address_pairs_update_request.py +3 -2
- waldur_api_client/models/open_stack_instance_availability_zone.py +1 -1
- waldur_api_client/models/open_stack_instance_create_order_attributes.py +283 -0
- waldur_api_client/models/open_stack_instance_request.py +4 -3
- waldur_api_client/models/open_stack_instance_security_groups_update_request.py +1 -1
- waldur_api_client/models/open_stack_nested_floating_ip.py +3 -3
- waldur_api_client/models/open_stack_nested_instance.py +1 -1
- waldur_api_client/models/open_stack_nested_port.py +5 -5
- waldur_api_client/models/open_stack_nested_port_request.py +1 -1
- waldur_api_client/models/open_stack_nested_security_group.py +16 -16
- waldur_api_client/models/open_stack_nested_security_group_request.py +59 -0
- waldur_api_client/models/{nested_security_group_rule_request.py → open_stack_nested_security_group_rules_item.py} +73 -63
- waldur_api_client/models/open_stack_nested_sub_net.py +4 -4
- waldur_api_client/models/open_stack_nested_sub_net_request.py +4 -4
- waldur_api_client/models/open_stack_nested_volume.py +3 -3
- waldur_api_client/models/open_stack_nested_volume_request.py +3 -3
- waldur_api_client/models/open_stack_network.py +23 -3
- waldur_api_client/models/open_stack_port.py +10 -9
- waldur_api_client/models/open_stack_port_ip_update_request.py +2 -2
- waldur_api_client/models/open_stack_port_request.py +3 -3
- waldur_api_client/models/open_stack_router.py +2 -2
- waldur_api_client/models/open_stack_router_interface_request.py +4 -2
- waldur_api_client/models/open_stack_security_group_rule_create.py +6 -5
- waldur_api_client/models/open_stack_security_group_rule_create_request.py +6 -5
- waldur_api_client/models/open_stack_security_group_rule_update_request.py +10 -9
- waldur_api_client/models/open_stack_server_group.py +2 -1
- waldur_api_client/models/open_stack_server_group_request.py +2 -1
- waldur_api_client/models/open_stack_snapshot.py +2 -2
- waldur_api_client/models/open_stack_snapshot_restoration.py +1 -1
- waldur_api_client/models/open_stack_sub_net.py +5 -5
- waldur_api_client/models/open_stack_sub_net_request.py +2 -2
- waldur_api_client/models/open_stack_tenant.py +41 -3
- waldur_api_client/models/open_stack_tenant_create_order_attributes.py +130 -0
- waldur_api_client/models/open_stack_volume.py +9 -9
- waldur_api_client/models/open_stack_volume_create_order_attributes.py +155 -0
- waldur_api_client/models/open_stack_volume_request.py +1 -1
- waldur_api_client/models/openstack_networks_list_field_item.py +1 -0
- waldur_api_client/models/openstack_networks_retrieve_field_item.py +1 -0
- waldur_api_client/models/openstack_tenants_list_field_item.py +3 -0
- waldur_api_client/models/openstack_tenants_retrieve_field_item.py +3 -0
- waldur_api_client/models/order_create.py +0 -8
- waldur_api_client/models/order_create_request.py +181 -4
- waldur_api_client/models/order_details.py +0 -9
- waldur_api_client/models/patched_offering_terms_of_service_request.py +96 -0
- waldur_api_client/models/patched_open_stack_instance_request.py +4 -3
- waldur_api_client/models/patched_open_stack_server_group_request.py +2 -1
- waldur_api_client/models/patched_open_stack_sub_net_request.py +2 -2
- waldur_api_client/models/patched_open_stack_volume_request.py +1 -1
- waldur_api_client/models/patched_user_offering_consent_request.py +59 -0
- waldur_api_client/models/permission_project.py +147 -0
- waldur_api_client/models/permission_request.py +2 -2
- waldur_api_client/models/project_answer.py +122 -0
- waldur_api_client/models/project_detail.py +133 -0
- waldur_api_client/models/project_details_response.py +115 -0
- waldur_api_client/models/provider_offering_details.py +9 -18
- waldur_api_client/models/provider_offering_details_request.py +0 -18
- waldur_api_client/models/public_maintenance_announcement.py +217 -0
- waldur_api_client/models/public_maintenance_announcement_state_enum.py +10 -0
- waldur_api_client/models/public_maintenance_announcements_count_o_item.py +15 -0
- waldur_api_client/models/public_maintenance_announcements_count_state_item.py +12 -0
- waldur_api_client/models/public_maintenance_announcements_list_o_item.py +15 -0
- waldur_api_client/models/public_maintenance_announcements_list_state_item.py +12 -0
- waldur_api_client/models/public_offering_details.py +9 -18
- waldur_api_client/models/question_answer.py +176 -0
- waldur_api_client/models/question_answer_project_answers_item.py +44 -0
- waldur_api_client/models/question_answer_question_options_item.py +44 -0
- waldur_api_client/models/rancher_cluster_security_group_rule.py +5 -4
- waldur_api_client/models/rancher_cluster_security_group_rule_request.py +5 -4
- waldur_api_client/models/remote_project_update_request.py +2 -2
- waldur_api_client/models/remote_resource_order.py +88 -0
- waldur_api_client/models/remote_resource_order_remote_state_enum.py +15 -0
- waldur_api_client/models/remote_resource_sync_status.py +123 -0
- waldur_api_client/models/remote_resource_sync_status_remote_state_enum.py +13 -0
- waldur_api_client/models/remote_resource_team_member.py +85 -0
- waldur_api_client/models/resource.py +10 -9
- waldur_api_client/models/robot_account_details.py +226 -144
- waldur_api_client/models/service_provider.py +9 -0
- waldur_api_client/models/service_provider_compliance_overview.py +122 -0
- waldur_api_client/models/service_provider_offering_user_compliance.py +179 -0
- waldur_api_client/models/service_provider_offering_user_compliance_state_enum.py +17 -0
- waldur_api_client/models/slurm_invoices_slurm_package_create_order_attributes.py +75 -0
- waldur_api_client/models/sync_status_enum.py +10 -0
- waldur_api_client/models/user_offering_consent.py +202 -0
- waldur_api_client/models/user_offering_consent_create.py +60 -0
- waldur_api_client/models/user_offering_consent_create_request.py +60 -0
- waldur_api_client/models/user_offering_consent_request.py +59 -0
- waldur_api_client/models/v_mware_virtual_machine_create_order_attributes.py +228 -0
- waldur_api_client/models/v_mware_virtual_machine_create_order_attributes_guest_os_type_1.py +155 -0
- waldur_api_client/models/v_mware_virtual_machine_create_order_attributes_guest_os_type_2_type_1.py +155 -0
- waldur_api_client/models/v_mware_virtual_machine_create_order_attributes_guest_os_type_3_type_1.py +155 -0
- waldur_api_client/models/volume_attach_request.py +1 -1
- {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.7.dist-info}/METADATA +1 -1
- {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.7.dist-info}/RECORD +228 -138
- waldur_api_client/models/nested_security_group_rule.py +0 -222
- {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.7.dist-info}/LICENSE +0 -0
- {waldur_api_client-7.7.5.dist-info → waldur_api_client-7.7.7.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import datetime
|
|
2
|
+
from collections.abc import Mapping
|
|
3
|
+
from typing import Any, TypeVar, Union
|
|
4
|
+
from uuid import UUID
|
|
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 ..types import UNSET, Unset
|
|
11
|
+
|
|
12
|
+
T = TypeVar("T", bound="OfferingTermsOfService")
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
@_attrs_define
|
|
16
|
+
class OfferingTermsOfService:
|
|
17
|
+
"""
|
|
18
|
+
Attributes:
|
|
19
|
+
uuid (UUID):
|
|
20
|
+
offering_uuid (UUID):
|
|
21
|
+
offering_name (str):
|
|
22
|
+
created (datetime.datetime):
|
|
23
|
+
modified (datetime.datetime):
|
|
24
|
+
terms_of_service (Union[Unset, str]):
|
|
25
|
+
terms_of_service_link (Union[Unset, str]):
|
|
26
|
+
version (Union[Unset, str]):
|
|
27
|
+
is_active (Union[Unset, bool]):
|
|
28
|
+
requires_reconsent (Union[Unset, bool]): If True, user will be asked to re-consent to the terms of service when
|
|
29
|
+
the terms of service are updated.
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
uuid: UUID
|
|
33
|
+
offering_uuid: UUID
|
|
34
|
+
offering_name: str
|
|
35
|
+
created: datetime.datetime
|
|
36
|
+
modified: datetime.datetime
|
|
37
|
+
terms_of_service: Union[Unset, str] = UNSET
|
|
38
|
+
terms_of_service_link: Union[Unset, str] = UNSET
|
|
39
|
+
version: Union[Unset, str] = UNSET
|
|
40
|
+
is_active: Union[Unset, bool] = UNSET
|
|
41
|
+
requires_reconsent: Union[Unset, bool] = UNSET
|
|
42
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
43
|
+
|
|
44
|
+
def to_dict(self) -> dict[str, Any]:
|
|
45
|
+
uuid = str(self.uuid)
|
|
46
|
+
|
|
47
|
+
offering_uuid = str(self.offering_uuid)
|
|
48
|
+
|
|
49
|
+
offering_name = self.offering_name
|
|
50
|
+
|
|
51
|
+
created = self.created.isoformat()
|
|
52
|
+
|
|
53
|
+
modified = self.modified.isoformat()
|
|
54
|
+
|
|
55
|
+
terms_of_service = self.terms_of_service
|
|
56
|
+
|
|
57
|
+
terms_of_service_link = self.terms_of_service_link
|
|
58
|
+
|
|
59
|
+
version = self.version
|
|
60
|
+
|
|
61
|
+
is_active = self.is_active
|
|
62
|
+
|
|
63
|
+
requires_reconsent = self.requires_reconsent
|
|
64
|
+
|
|
65
|
+
field_dict: dict[str, Any] = {}
|
|
66
|
+
field_dict.update(self.additional_properties)
|
|
67
|
+
field_dict.update(
|
|
68
|
+
{
|
|
69
|
+
"uuid": uuid,
|
|
70
|
+
"offering_uuid": offering_uuid,
|
|
71
|
+
"offering_name": offering_name,
|
|
72
|
+
"created": created,
|
|
73
|
+
"modified": modified,
|
|
74
|
+
}
|
|
75
|
+
)
|
|
76
|
+
if terms_of_service is not UNSET:
|
|
77
|
+
field_dict["terms_of_service"] = terms_of_service
|
|
78
|
+
if terms_of_service_link is not UNSET:
|
|
79
|
+
field_dict["terms_of_service_link"] = terms_of_service_link
|
|
80
|
+
if version is not UNSET:
|
|
81
|
+
field_dict["version"] = version
|
|
82
|
+
if is_active is not UNSET:
|
|
83
|
+
field_dict["is_active"] = is_active
|
|
84
|
+
if requires_reconsent is not UNSET:
|
|
85
|
+
field_dict["requires_reconsent"] = requires_reconsent
|
|
86
|
+
|
|
87
|
+
return field_dict
|
|
88
|
+
|
|
89
|
+
@classmethod
|
|
90
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
91
|
+
d = dict(src_dict)
|
|
92
|
+
uuid = UUID(d.pop("uuid"))
|
|
93
|
+
|
|
94
|
+
offering_uuid = UUID(d.pop("offering_uuid"))
|
|
95
|
+
|
|
96
|
+
offering_name = d.pop("offering_name")
|
|
97
|
+
|
|
98
|
+
created = isoparse(d.pop("created"))
|
|
99
|
+
|
|
100
|
+
modified = isoparse(d.pop("modified"))
|
|
101
|
+
|
|
102
|
+
terms_of_service = d.pop("terms_of_service", UNSET)
|
|
103
|
+
|
|
104
|
+
terms_of_service_link = d.pop("terms_of_service_link", UNSET)
|
|
105
|
+
|
|
106
|
+
version = d.pop("version", UNSET)
|
|
107
|
+
|
|
108
|
+
is_active = d.pop("is_active", UNSET)
|
|
109
|
+
|
|
110
|
+
requires_reconsent = d.pop("requires_reconsent", UNSET)
|
|
111
|
+
|
|
112
|
+
offering_terms_of_service = cls(
|
|
113
|
+
uuid=uuid,
|
|
114
|
+
offering_uuid=offering_uuid,
|
|
115
|
+
offering_name=offering_name,
|
|
116
|
+
created=created,
|
|
117
|
+
modified=modified,
|
|
118
|
+
terms_of_service=terms_of_service,
|
|
119
|
+
terms_of_service_link=terms_of_service_link,
|
|
120
|
+
version=version,
|
|
121
|
+
is_active=is_active,
|
|
122
|
+
requires_reconsent=requires_reconsent,
|
|
123
|
+
)
|
|
124
|
+
|
|
125
|
+
offering_terms_of_service.additional_properties = d
|
|
126
|
+
return offering_terms_of_service
|
|
127
|
+
|
|
128
|
+
@property
|
|
129
|
+
def additional_keys(self) -> list[str]:
|
|
130
|
+
return list(self.additional_properties.keys())
|
|
131
|
+
|
|
132
|
+
def __getitem__(self, key: str) -> Any:
|
|
133
|
+
return self.additional_properties[key]
|
|
134
|
+
|
|
135
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
136
|
+
self.additional_properties[key] = value
|
|
137
|
+
|
|
138
|
+
def __delitem__(self, key: str) -> None:
|
|
139
|
+
del self.additional_properties[key]
|
|
140
|
+
|
|
141
|
+
def __contains__(self, key: str) -> bool:
|
|
142
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar, Union
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
from ..types import UNSET, Unset
|
|
8
|
+
|
|
9
|
+
T = TypeVar("T", bound="OfferingTermsOfServiceCreate")
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@_attrs_define
|
|
13
|
+
class OfferingTermsOfServiceCreate:
|
|
14
|
+
"""
|
|
15
|
+
Attributes:
|
|
16
|
+
offering (str):
|
|
17
|
+
terms_of_service (Union[Unset, str]):
|
|
18
|
+
terms_of_service_link (Union[Unset, str]):
|
|
19
|
+
version (Union[Unset, str]):
|
|
20
|
+
is_active (Union[Unset, bool]):
|
|
21
|
+
requires_reconsent (Union[Unset, bool]): If True, user will be asked to re-consent to the terms of service when
|
|
22
|
+
the terms of service are updated.
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
offering: str
|
|
26
|
+
terms_of_service: Union[Unset, str] = UNSET
|
|
27
|
+
terms_of_service_link: Union[Unset, str] = UNSET
|
|
28
|
+
version: Union[Unset, str] = UNSET
|
|
29
|
+
is_active: Union[Unset, bool] = UNSET
|
|
30
|
+
requires_reconsent: Union[Unset, bool] = UNSET
|
|
31
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
32
|
+
|
|
33
|
+
def to_dict(self) -> dict[str, Any]:
|
|
34
|
+
offering = self.offering
|
|
35
|
+
|
|
36
|
+
terms_of_service = self.terms_of_service
|
|
37
|
+
|
|
38
|
+
terms_of_service_link = self.terms_of_service_link
|
|
39
|
+
|
|
40
|
+
version = self.version
|
|
41
|
+
|
|
42
|
+
is_active = self.is_active
|
|
43
|
+
|
|
44
|
+
requires_reconsent = self.requires_reconsent
|
|
45
|
+
|
|
46
|
+
field_dict: dict[str, Any] = {}
|
|
47
|
+
field_dict.update(self.additional_properties)
|
|
48
|
+
field_dict.update(
|
|
49
|
+
{
|
|
50
|
+
"offering": offering,
|
|
51
|
+
}
|
|
52
|
+
)
|
|
53
|
+
if terms_of_service is not UNSET:
|
|
54
|
+
field_dict["terms_of_service"] = terms_of_service
|
|
55
|
+
if terms_of_service_link is not UNSET:
|
|
56
|
+
field_dict["terms_of_service_link"] = terms_of_service_link
|
|
57
|
+
if version is not UNSET:
|
|
58
|
+
field_dict["version"] = version
|
|
59
|
+
if is_active is not UNSET:
|
|
60
|
+
field_dict["is_active"] = is_active
|
|
61
|
+
if requires_reconsent is not UNSET:
|
|
62
|
+
field_dict["requires_reconsent"] = requires_reconsent
|
|
63
|
+
|
|
64
|
+
return field_dict
|
|
65
|
+
|
|
66
|
+
@classmethod
|
|
67
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
68
|
+
d = dict(src_dict)
|
|
69
|
+
offering = d.pop("offering")
|
|
70
|
+
|
|
71
|
+
terms_of_service = d.pop("terms_of_service", UNSET)
|
|
72
|
+
|
|
73
|
+
terms_of_service_link = d.pop("terms_of_service_link", UNSET)
|
|
74
|
+
|
|
75
|
+
version = d.pop("version", UNSET)
|
|
76
|
+
|
|
77
|
+
is_active = d.pop("is_active", UNSET)
|
|
78
|
+
|
|
79
|
+
requires_reconsent = d.pop("requires_reconsent", UNSET)
|
|
80
|
+
|
|
81
|
+
offering_terms_of_service_create = cls(
|
|
82
|
+
offering=offering,
|
|
83
|
+
terms_of_service=terms_of_service,
|
|
84
|
+
terms_of_service_link=terms_of_service_link,
|
|
85
|
+
version=version,
|
|
86
|
+
is_active=is_active,
|
|
87
|
+
requires_reconsent=requires_reconsent,
|
|
88
|
+
)
|
|
89
|
+
|
|
90
|
+
offering_terms_of_service_create.additional_properties = d
|
|
91
|
+
return offering_terms_of_service_create
|
|
92
|
+
|
|
93
|
+
@property
|
|
94
|
+
def additional_keys(self) -> list[str]:
|
|
95
|
+
return list(self.additional_properties.keys())
|
|
96
|
+
|
|
97
|
+
def __getitem__(self, key: str) -> Any:
|
|
98
|
+
return self.additional_properties[key]
|
|
99
|
+
|
|
100
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
101
|
+
self.additional_properties[key] = value
|
|
102
|
+
|
|
103
|
+
def __delitem__(self, key: str) -> None:
|
|
104
|
+
del self.additional_properties[key]
|
|
105
|
+
|
|
106
|
+
def __contains__(self, key: str) -> bool:
|
|
107
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar, Union
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
from ..types import UNSET, Unset
|
|
8
|
+
|
|
9
|
+
T = TypeVar("T", bound="OfferingTermsOfServiceCreateRequest")
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@_attrs_define
|
|
13
|
+
class OfferingTermsOfServiceCreateRequest:
|
|
14
|
+
"""
|
|
15
|
+
Attributes:
|
|
16
|
+
offering (str):
|
|
17
|
+
terms_of_service (Union[Unset, str]):
|
|
18
|
+
terms_of_service_link (Union[Unset, str]):
|
|
19
|
+
version (Union[Unset, str]):
|
|
20
|
+
is_active (Union[Unset, bool]):
|
|
21
|
+
requires_reconsent (Union[Unset, bool]): If True, user will be asked to re-consent to the terms of service when
|
|
22
|
+
the terms of service are updated.
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
offering: str
|
|
26
|
+
terms_of_service: Union[Unset, str] = UNSET
|
|
27
|
+
terms_of_service_link: Union[Unset, str] = UNSET
|
|
28
|
+
version: Union[Unset, str] = UNSET
|
|
29
|
+
is_active: Union[Unset, bool] = UNSET
|
|
30
|
+
requires_reconsent: Union[Unset, bool] = UNSET
|
|
31
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
32
|
+
|
|
33
|
+
def to_dict(self) -> dict[str, Any]:
|
|
34
|
+
offering = self.offering
|
|
35
|
+
|
|
36
|
+
terms_of_service = self.terms_of_service
|
|
37
|
+
|
|
38
|
+
terms_of_service_link = self.terms_of_service_link
|
|
39
|
+
|
|
40
|
+
version = self.version
|
|
41
|
+
|
|
42
|
+
is_active = self.is_active
|
|
43
|
+
|
|
44
|
+
requires_reconsent = self.requires_reconsent
|
|
45
|
+
|
|
46
|
+
field_dict: dict[str, Any] = {}
|
|
47
|
+
field_dict.update(self.additional_properties)
|
|
48
|
+
field_dict.update(
|
|
49
|
+
{
|
|
50
|
+
"offering": offering,
|
|
51
|
+
}
|
|
52
|
+
)
|
|
53
|
+
if terms_of_service is not UNSET:
|
|
54
|
+
field_dict["terms_of_service"] = terms_of_service
|
|
55
|
+
if terms_of_service_link is not UNSET:
|
|
56
|
+
field_dict["terms_of_service_link"] = terms_of_service_link
|
|
57
|
+
if version is not UNSET:
|
|
58
|
+
field_dict["version"] = version
|
|
59
|
+
if is_active is not UNSET:
|
|
60
|
+
field_dict["is_active"] = is_active
|
|
61
|
+
if requires_reconsent is not UNSET:
|
|
62
|
+
field_dict["requires_reconsent"] = requires_reconsent
|
|
63
|
+
|
|
64
|
+
return field_dict
|
|
65
|
+
|
|
66
|
+
@classmethod
|
|
67
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
68
|
+
d = dict(src_dict)
|
|
69
|
+
offering = d.pop("offering")
|
|
70
|
+
|
|
71
|
+
terms_of_service = d.pop("terms_of_service", UNSET)
|
|
72
|
+
|
|
73
|
+
terms_of_service_link = d.pop("terms_of_service_link", UNSET)
|
|
74
|
+
|
|
75
|
+
version = d.pop("version", UNSET)
|
|
76
|
+
|
|
77
|
+
is_active = d.pop("is_active", UNSET)
|
|
78
|
+
|
|
79
|
+
requires_reconsent = d.pop("requires_reconsent", UNSET)
|
|
80
|
+
|
|
81
|
+
offering_terms_of_service_create_request = cls(
|
|
82
|
+
offering=offering,
|
|
83
|
+
terms_of_service=terms_of_service,
|
|
84
|
+
terms_of_service_link=terms_of_service_link,
|
|
85
|
+
version=version,
|
|
86
|
+
is_active=is_active,
|
|
87
|
+
requires_reconsent=requires_reconsent,
|
|
88
|
+
)
|
|
89
|
+
|
|
90
|
+
offering_terms_of_service_create_request.additional_properties = d
|
|
91
|
+
return offering_terms_of_service_create_request
|
|
92
|
+
|
|
93
|
+
@property
|
|
94
|
+
def additional_keys(self) -> list[str]:
|
|
95
|
+
return list(self.additional_properties.keys())
|
|
96
|
+
|
|
97
|
+
def __getitem__(self, key: str) -> Any:
|
|
98
|
+
return self.additional_properties[key]
|
|
99
|
+
|
|
100
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
101
|
+
self.additional_properties[key] = value
|
|
102
|
+
|
|
103
|
+
def __delitem__(self, key: str) -> None:
|
|
104
|
+
del self.additional_properties[key]
|
|
105
|
+
|
|
106
|
+
def __contains__(self, key: str) -> bool:
|
|
107
|
+
return key in self.additional_properties
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar, Union
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
from ..types import UNSET, Unset
|
|
8
|
+
|
|
9
|
+
T = TypeVar("T", bound="OfferingTermsOfServiceRequest")
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@_attrs_define
|
|
13
|
+
class OfferingTermsOfServiceRequest:
|
|
14
|
+
"""
|
|
15
|
+
Attributes:
|
|
16
|
+
terms_of_service (Union[Unset, str]):
|
|
17
|
+
terms_of_service_link (Union[Unset, str]):
|
|
18
|
+
version (Union[Unset, str]):
|
|
19
|
+
is_active (Union[Unset, bool]):
|
|
20
|
+
requires_reconsent (Union[Unset, bool]): If True, user will be asked to re-consent to the terms of service when
|
|
21
|
+
the terms of service are updated.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
terms_of_service: Union[Unset, str] = UNSET
|
|
25
|
+
terms_of_service_link: Union[Unset, str] = UNSET
|
|
26
|
+
version: Union[Unset, str] = UNSET
|
|
27
|
+
is_active: Union[Unset, bool] = UNSET
|
|
28
|
+
requires_reconsent: Union[Unset, bool] = UNSET
|
|
29
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
30
|
+
|
|
31
|
+
def to_dict(self) -> dict[str, Any]:
|
|
32
|
+
terms_of_service = self.terms_of_service
|
|
33
|
+
|
|
34
|
+
terms_of_service_link = self.terms_of_service_link
|
|
35
|
+
|
|
36
|
+
version = self.version
|
|
37
|
+
|
|
38
|
+
is_active = self.is_active
|
|
39
|
+
|
|
40
|
+
requires_reconsent = self.requires_reconsent
|
|
41
|
+
|
|
42
|
+
field_dict: dict[str, Any] = {}
|
|
43
|
+
field_dict.update(self.additional_properties)
|
|
44
|
+
field_dict.update({})
|
|
45
|
+
if terms_of_service is not UNSET:
|
|
46
|
+
field_dict["terms_of_service"] = terms_of_service
|
|
47
|
+
if terms_of_service_link is not UNSET:
|
|
48
|
+
field_dict["terms_of_service_link"] = terms_of_service_link
|
|
49
|
+
if version is not UNSET:
|
|
50
|
+
field_dict["version"] = version
|
|
51
|
+
if is_active is not UNSET:
|
|
52
|
+
field_dict["is_active"] = is_active
|
|
53
|
+
if requires_reconsent is not UNSET:
|
|
54
|
+
field_dict["requires_reconsent"] = requires_reconsent
|
|
55
|
+
|
|
56
|
+
return field_dict
|
|
57
|
+
|
|
58
|
+
@classmethod
|
|
59
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
60
|
+
d = dict(src_dict)
|
|
61
|
+
terms_of_service = d.pop("terms_of_service", UNSET)
|
|
62
|
+
|
|
63
|
+
terms_of_service_link = d.pop("terms_of_service_link", UNSET)
|
|
64
|
+
|
|
65
|
+
version = d.pop("version", UNSET)
|
|
66
|
+
|
|
67
|
+
is_active = d.pop("is_active", UNSET)
|
|
68
|
+
|
|
69
|
+
requires_reconsent = d.pop("requires_reconsent", UNSET)
|
|
70
|
+
|
|
71
|
+
offering_terms_of_service_request = cls(
|
|
72
|
+
terms_of_service=terms_of_service,
|
|
73
|
+
terms_of_service_link=terms_of_service_link,
|
|
74
|
+
version=version,
|
|
75
|
+
is_active=is_active,
|
|
76
|
+
requires_reconsent=requires_reconsent,
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
offering_terms_of_service_request.additional_properties = d
|
|
80
|
+
return offering_terms_of_service_request
|
|
81
|
+
|
|
82
|
+
@property
|
|
83
|
+
def additional_keys(self) -> list[str]:
|
|
84
|
+
return list(self.additional_properties.keys())
|
|
85
|
+
|
|
86
|
+
def __getitem__(self, key: str) -> Any:
|
|
87
|
+
return self.additional_properties[key]
|
|
88
|
+
|
|
89
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
90
|
+
self.additional_properties[key] = value
|
|
91
|
+
|
|
92
|
+
def __delitem__(self, key: str) -> None:
|
|
93
|
+
del self.additional_properties[key]
|
|
94
|
+
|
|
95
|
+
def __contains__(self, key: str) -> bool:
|
|
96
|
+
return key in self.additional_properties
|
|
@@ -22,8 +22,8 @@ class OpenStackBackendInstance:
|
|
|
22
22
|
key_name (Union[Unset, str]):
|
|
23
23
|
start_time (Union[None, Unset, datetime.datetime]):
|
|
24
24
|
runtime_state (Union[Unset, str]):
|
|
25
|
-
backend_id (Union[None, Unset, str]):
|
|
26
|
-
hypervisor_hostname (Union[Unset, str]):
|
|
25
|
+
backend_id (Union[None, Unset, str]): Instance ID in the OpenStack backend
|
|
26
|
+
hypervisor_hostname (Union[Unset, str]): Name of the hypervisor hosting this instance
|
|
27
27
|
"""
|
|
28
28
|
|
|
29
29
|
name: str
|
|
@@ -19,9 +19,9 @@ class OpenStackBackendVolumes:
|
|
|
19
19
|
state (str):
|
|
20
20
|
availability_zone (str):
|
|
21
21
|
description (Union[Unset, str]):
|
|
22
|
-
metadata (Union[Unset, str]):
|
|
23
|
-
backend_id (Union[None, Unset, str]):
|
|
24
|
-
bootable (Union[Unset, bool]):
|
|
22
|
+
metadata (Union[Unset, str]): Arbitrary key-value pairs associated with the volume
|
|
23
|
+
backend_id (Union[None, Unset, str]): Volume ID in the OpenStack backend
|
|
24
|
+
bootable (Union[Unset, bool]): Indicates if this volume can be used to boot an instance
|
|
25
25
|
runtime_state (Union[Unset, str]):
|
|
26
26
|
"""
|
|
27
27
|
|
|
@@ -53,7 +53,7 @@ class OpenStackBackup:
|
|
|
53
53
|
access_url (Union[None, Unset, str]):
|
|
54
54
|
kept_until (Union[None, Unset, datetime.datetime]): Guaranteed time of backup retention. If null - keep forever.
|
|
55
55
|
metadata (Union[Unset, Any]):
|
|
56
|
-
instance (Union[Unset, str]):
|
|
56
|
+
instance (Union[Unset, str]): Instance that this backup is created from
|
|
57
57
|
instance_name (Union[Unset, str]):
|
|
58
58
|
instance_marketplace_uuid (Union[Unset, UUID]):
|
|
59
59
|
restorations (Union[Unset, list['OpenStackBackupRestoration']]):
|
|
@@ -23,13 +23,16 @@ class OpenStackBackupRestoration:
|
|
|
23
23
|
"""
|
|
24
24
|
Attributes:
|
|
25
25
|
uuid (Union[Unset, UUID]):
|
|
26
|
-
instance (Union[Unset, str]):
|
|
26
|
+
instance (Union[Unset, str]): Instance that is being restored from the backup
|
|
27
27
|
created (Union[Unset, datetime.datetime]):
|
|
28
|
-
flavor (Union[Unset, str]):
|
|
28
|
+
flavor (Union[Unset, str]): Flavor to be used for the restored instance. If not specified, original instance
|
|
29
|
+
flavor will be used
|
|
29
30
|
name (Union[Unset, str]): New instance name. Leave blank to use source instance name.
|
|
30
|
-
floating_ips (Union[Unset, list['OpenStackNestedFloatingIP']]):
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
floating_ips (Union[Unset, list['OpenStackNestedFloatingIP']]): Floating IPs that will be assigned to the
|
|
32
|
+
restored instance
|
|
33
|
+
security_groups (Union[Unset, list['OpenStackNestedSecurityGroup']]): Security groups that will be assigned to
|
|
34
|
+
the restored instance
|
|
35
|
+
ports (Union[Unset, list['OpenStackNestedPort']]): Network ports that will be attached to the restored instance
|
|
33
36
|
"""
|
|
34
37
|
|
|
35
38
|
uuid: Union[Unset, UUID] = UNSET
|
|
@@ -9,6 +9,7 @@ from ..types import UNSET, Unset
|
|
|
9
9
|
if TYPE_CHECKING:
|
|
10
10
|
from ..models.open_stack_nested_floating_ip_request import OpenStackNestedFloatingIPRequest
|
|
11
11
|
from ..models.open_stack_nested_port_request import OpenStackNestedPortRequest
|
|
12
|
+
from ..models.open_stack_nested_security_group_request import OpenStackNestedSecurityGroupRequest
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
T = TypeVar("T", bound="OpenStackBackupRestorationRequest")
|
|
@@ -18,15 +19,21 @@ T = TypeVar("T", bound="OpenStackBackupRestorationRequest")
|
|
|
18
19
|
class OpenStackBackupRestorationRequest:
|
|
19
20
|
"""
|
|
20
21
|
Attributes:
|
|
21
|
-
flavor (str):
|
|
22
|
+
flavor (str): Flavor to be used for the restored instance. If not specified, original instance flavor will be
|
|
23
|
+
used
|
|
22
24
|
name (Union[Unset, str]): New instance name. Leave blank to use source instance name.
|
|
23
|
-
floating_ips (Union[Unset, list['OpenStackNestedFloatingIPRequest']]):
|
|
24
|
-
|
|
25
|
+
floating_ips (Union[Unset, list['OpenStackNestedFloatingIPRequest']]): Floating IPs that will be assigned to the
|
|
26
|
+
restored instance
|
|
27
|
+
security_groups (Union[Unset, list['OpenStackNestedSecurityGroupRequest']]): Security groups that will be
|
|
28
|
+
assigned to the restored instance
|
|
29
|
+
ports (Union[Unset, list['OpenStackNestedPortRequest']]): Network ports that will be attached to the restored
|
|
30
|
+
instance
|
|
25
31
|
"""
|
|
26
32
|
|
|
27
33
|
flavor: str
|
|
28
34
|
name: Union[Unset, str] = UNSET
|
|
29
35
|
floating_ips: Union[Unset, list["OpenStackNestedFloatingIPRequest"]] = UNSET
|
|
36
|
+
security_groups: Union[Unset, list["OpenStackNestedSecurityGroupRequest"]] = UNSET
|
|
30
37
|
ports: Union[Unset, list["OpenStackNestedPortRequest"]] = UNSET
|
|
31
38
|
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
32
39
|
|
|
@@ -42,6 +49,13 @@ class OpenStackBackupRestorationRequest:
|
|
|
42
49
|
floating_ips_item = floating_ips_item_data.to_dict()
|
|
43
50
|
floating_ips.append(floating_ips_item)
|
|
44
51
|
|
|
52
|
+
security_groups: Union[Unset, list[dict[str, Any]]] = UNSET
|
|
53
|
+
if not isinstance(self.security_groups, Unset):
|
|
54
|
+
security_groups = []
|
|
55
|
+
for security_groups_item_data in self.security_groups:
|
|
56
|
+
security_groups_item = security_groups_item_data.to_dict()
|
|
57
|
+
security_groups.append(security_groups_item)
|
|
58
|
+
|
|
45
59
|
ports: Union[Unset, list[dict[str, Any]]] = UNSET
|
|
46
60
|
if not isinstance(self.ports, Unset):
|
|
47
61
|
ports = []
|
|
@@ -60,6 +74,8 @@ class OpenStackBackupRestorationRequest:
|
|
|
60
74
|
field_dict["name"] = name
|
|
61
75
|
if floating_ips is not UNSET:
|
|
62
76
|
field_dict["floating_ips"] = floating_ips
|
|
77
|
+
if security_groups is not UNSET:
|
|
78
|
+
field_dict["security_groups"] = security_groups
|
|
63
79
|
if ports is not UNSET:
|
|
64
80
|
field_dict["ports"] = ports
|
|
65
81
|
|
|
@@ -69,6 +85,7 @@ class OpenStackBackupRestorationRequest:
|
|
|
69
85
|
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
70
86
|
from ..models.open_stack_nested_floating_ip_request import OpenStackNestedFloatingIPRequest
|
|
71
87
|
from ..models.open_stack_nested_port_request import OpenStackNestedPortRequest
|
|
88
|
+
from ..models.open_stack_nested_security_group_request import OpenStackNestedSecurityGroupRequest
|
|
72
89
|
|
|
73
90
|
d = dict(src_dict)
|
|
74
91
|
flavor = d.pop("flavor")
|
|
@@ -82,6 +99,13 @@ class OpenStackBackupRestorationRequest:
|
|
|
82
99
|
|
|
83
100
|
floating_ips.append(floating_ips_item)
|
|
84
101
|
|
|
102
|
+
security_groups = []
|
|
103
|
+
_security_groups = d.pop("security_groups", UNSET)
|
|
104
|
+
for security_groups_item_data in _security_groups or []:
|
|
105
|
+
security_groups_item = OpenStackNestedSecurityGroupRequest.from_dict(security_groups_item_data)
|
|
106
|
+
|
|
107
|
+
security_groups.append(security_groups_item)
|
|
108
|
+
|
|
85
109
|
ports = []
|
|
86
110
|
_ports = d.pop("ports", UNSET)
|
|
87
111
|
for ports_item_data in _ports or []:
|
|
@@ -93,6 +117,7 @@ class OpenStackBackupRestorationRequest:
|
|
|
93
117
|
flavor=flavor,
|
|
94
118
|
name=name,
|
|
95
119
|
floating_ips=floating_ips,
|
|
120
|
+
security_groups=security_groups,
|
|
96
121
|
ports=ports,
|
|
97
122
|
)
|
|
98
123
|
|
|
@@ -13,8 +13,8 @@ T = TypeVar("T", bound="OpenStackFixedIp")
|
|
|
13
13
|
class OpenStackFixedIp:
|
|
14
14
|
"""
|
|
15
15
|
Attributes:
|
|
16
|
-
ip_address (Union[Unset, str]):
|
|
17
|
-
subnet_id (Union[Unset, str]):
|
|
16
|
+
ip_address (Union[Unset, str]): IP address to assign to the port
|
|
17
|
+
subnet_id (Union[Unset, str]): ID of the subnet in which to assign the IP address
|
|
18
18
|
"""
|
|
19
19
|
|
|
20
20
|
ip_address: Union[Unset, str] = UNSET
|
|
@@ -11,8 +11,8 @@ T = TypeVar("T", bound="OpenStackFixedIpRequest")
|
|
|
11
11
|
class OpenStackFixedIpRequest:
|
|
12
12
|
"""
|
|
13
13
|
Attributes:
|
|
14
|
-
ip_address (str):
|
|
15
|
-
subnet_id (str):
|
|
14
|
+
ip_address (str): IP address to assign to the port
|
|
15
|
+
subnet_id (str): ID of the subnet in which to assign the IP address
|
|
16
16
|
"""
|
|
17
17
|
|
|
18
18
|
ip_address: str
|
|
@@ -49,13 +49,14 @@ class OpenStackFloatingIP:
|
|
|
49
49
|
backend_id (Union[Unset, str]):
|
|
50
50
|
access_url (Union[None, Unset, str]):
|
|
51
51
|
runtime_state (Union[Unset, str]):
|
|
52
|
-
address (Union[None, Unset, str]):
|
|
53
|
-
backend_network_id (Union[Unset, str]):
|
|
54
|
-
tenant (Union[Unset, str]):
|
|
52
|
+
address (Union[None, Unset, str]): The public IPv4 address of the floating IP
|
|
53
|
+
backend_network_id (Union[Unset, str]): ID of network in OpenStack where this floating IP is allocated
|
|
54
|
+
tenant (Union[Unset, str]): OpenStack tenant this floating IP belongs to
|
|
55
55
|
tenant_name (Union[Unset, str]):
|
|
56
56
|
tenant_uuid (Union[Unset, UUID]):
|
|
57
57
|
port (Union[Unset, str]):
|
|
58
|
-
external_address (Union[None, Unset, str]):
|
|
58
|
+
external_address (Union[None, Unset, str]): Optional address that maps to floating IP's address in external
|
|
59
|
+
networks
|
|
59
60
|
port_fixed_ips (Union[Unset, list['OpenStackFixedIp']]):
|
|
60
61
|
instance_uuid (Union[None, Unset, str]):
|
|
61
62
|
instance_name (Union[None, Unset, str]):
|