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.

Files changed (174) hide show
  1. waldur_api_client/api/booking_resources/booking_resources_count.py +18 -0
  2. waldur_api_client/api/booking_resources/booking_resources_list.py +18 -0
  3. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_count.py +125 -0
  4. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_checklist_template_retrieve.py +126 -0
  5. waldur_api_client/api/marketplace_project_update_requests/marketplace_project_update_requests_count.py +18 -18
  6. waldur_api_client/api/marketplace_project_update_requests/marketplace_project_update_requests_list.py +18 -18
  7. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_tos_stats_retrieve.py +146 -0
  8. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +18 -0
  9. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +18 -0
  10. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_move_resource.py +22 -0
  11. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_update_options.py +168 -0
  12. waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +18 -0
  13. waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +18 -0
  14. waldur_api_client/api/marketplace_resources/marketplace_resources_move_resource.py +22 -0
  15. waldur_api_client/api/marketplace_resources/marketplace_resources_renew.py +166 -0
  16. waldur_api_client/api/marketplace_service_providers/service_provider_checklists_summary.py +189 -0
  17. waldur_api_client/api/onboarding/__init__.py +1 -0
  18. waldur_api_client/api/onboarding/onboarding_supported_countries_retrieve.py +74 -0
  19. waldur_api_client/api/onboarding_justifications/__init__.py +1 -0
  20. waldur_api_client/api/onboarding_justifications/onboarding_justifications_attach_document.py +211 -0
  21. waldur_api_client/api/onboarding_justifications/onboarding_justifications_count.py +172 -0
  22. waldur_api_client/api/onboarding_justifications/onboarding_justifications_create.py +150 -0
  23. waldur_api_client/api/onboarding_justifications/onboarding_justifications_create_justification.py +154 -0
  24. waldur_api_client/api/onboarding_justifications/onboarding_justifications_destroy.py +89 -0
  25. waldur_api_client/api/onboarding_justifications/onboarding_justifications_list.py +175 -0
  26. waldur_api_client/api/onboarding_justifications/onboarding_justifications_partial_update.py +164 -0
  27. waldur_api_client/api/onboarding_justifications/onboarding_justifications_retrieve.py +142 -0
  28. waldur_api_client/api/onboarding_justifications/onboarding_justifications_update.py +164 -0
  29. waldur_api_client/api/onboarding_verifications/__init__.py +1 -0
  30. waldur_api_client/api/onboarding_verifications/onboarding_verifications_count.py +172 -0
  31. waldur_api_client/api/onboarding_verifications/onboarding_verifications_create.py +150 -0
  32. waldur_api_client/api/onboarding_verifications/onboarding_verifications_create_customer.py +144 -0
  33. waldur_api_client/api/onboarding_verifications/onboarding_verifications_destroy.py +89 -0
  34. waldur_api_client/api/onboarding_verifications/onboarding_verifications_list.py +175 -0
  35. waldur_api_client/api/onboarding_verifications/onboarding_verifications_partial_update.py +164 -0
  36. waldur_api_client/api/onboarding_verifications/onboarding_verifications_retrieve.py +142 -0
  37. waldur_api_client/api/onboarding_verifications/onboarding_verifications_update.py +164 -0
  38. waldur_api_client/api/onboarding_verifications/onboarding_verifications_validate_company.py +154 -0
  39. waldur_api_client/api/openstack_backups/openstack_backups_restore.py +10 -10
  40. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_count.py +33 -0
  41. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_create.py +154 -0
  42. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_destroy.py +91 -0
  43. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_list.py +33 -0
  44. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_partial_update.py +164 -0
  45. waldur_api_client/api/openstack_network_rbac_policies/openstack_network_rbac_policies_update.py +164 -0
  46. waldur_api_client/api/openstack_networks/openstack_networks_rbac_policy_create.py +24 -22
  47. waldur_api_client/api/projects/projects_checklist_template_count.py +125 -0
  48. waldur_api_client/api/projects/projects_checklist_template_retrieve.py +126 -0
  49. waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_count.py +125 -0
  50. waldur_api_client/api/proposal_proposals/proposal_proposals_checklist_template_retrieve.py +126 -0
  51. waldur_api_client/api/proposal_protected_calls/proposal_protected_calls_offerings_list.py +15 -0
  52. waldur_api_client/api/rancher_services/rancher_services_create.py +22 -22
  53. waldur_api_client/models/__init__.py +88 -10
  54. waldur_api_client/models/azure_sql_server_create_order_attributes.py +5 -10
  55. waldur_api_client/models/azure_virtual_machine_create_order_attributes.py +7 -12
  56. waldur_api_client/models/booking_resource.py +9 -34
  57. waldur_api_client/models/booking_resources_list_field_item.py +1 -3
  58. waldur_api_client/models/booking_resources_retrieve_field_item.py +1 -3
  59. waldur_api_client/models/call_round.py +4 -4
  60. waldur_api_client/models/checklist_template.py +99 -0
  61. waldur_api_client/models/checklist_template_checklist.py +44 -0
  62. waldur_api_client/models/constance_settings.py +54 -0
  63. waldur_api_client/models/constance_settings_request.py +54 -0
  64. waldur_api_client/models/constance_settings_request_form.py +54 -0
  65. waldur_api_client/models/constance_settings_request_multipart.py +99 -0
  66. waldur_api_client/models/customer.py +9 -0
  67. waldur_api_client/models/customers_list_field_item.py +1 -0
  68. waldur_api_client/models/customers_retrieve_field_item.py +1 -0
  69. waldur_api_client/models/deprecated_network_rbac_policy.py +137 -0
  70. waldur_api_client/models/deprecated_network_rbac_policy_request.py +78 -0
  71. waldur_api_client/models/event_groups_enum.py +1 -0
  72. waldur_api_client/models/event_types_enum.py +3 -0
  73. waldur_api_client/models/generic_order_attributes.py +1 -2
  74. waldur_api_client/models/managed_rancher_cluster_resources_list_field_item.py +1 -3
  75. waldur_api_client/models/managed_rancher_cluster_resources_retrieve_field_item.py +1 -3
  76. waldur_api_client/models/marketplace_orders_list_field_item.py +1 -3
  77. waldur_api_client/models/marketplace_orders_retrieve_field_item.py +1 -3
  78. waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +1 -3
  79. waldur_api_client/models/marketplace_provider_resources_list_field_item.py +1 -3
  80. waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +1 -3
  81. waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +1 -3
  82. waldur_api_client/models/marketplace_resources_list_field_item.py +1 -3
  83. waldur_api_client/models/marketplace_resources_retrieve_field_item.py +1 -3
  84. waldur_api_client/models/marketplace_robot_accounts_list_field_item.py +2 -1
  85. waldur_api_client/models/marketplace_robot_accounts_retrieve_field_item.py +2 -1
  86. waldur_api_client/models/marketplace_service_providers_projects_list_field_item.py +1 -0
  87. waldur_api_client/models/merged_plugin_options.py +27 -0
  88. waldur_api_client/models/merged_plugin_options_request.py +27 -0
  89. waldur_api_client/models/move_resource_request.py +65 -0
  90. waldur_api_client/models/nested_round.py +5 -5
  91. waldur_api_client/models/network_rbac_policy_request.py +8 -0
  92. waldur_api_client/models/notification.py +9 -9
  93. waldur_api_client/models/{notification_context_fields.py → notification_context_schema.py} +6 -6
  94. waldur_api_client/models/notification_template_detail_serializers.py +9 -3
  95. waldur_api_client/models/offering_component.py +79 -0
  96. waldur_api_client/models/offering_component_request.py +80 -0
  97. waldur_api_client/models/onboarding_company_validation_request_request.py +88 -0
  98. waldur_api_client/models/onboarding_justification.py +183 -0
  99. waldur_api_client/models/onboarding_justification_create_request.py +68 -0
  100. waldur_api_client/models/onboarding_justification_documentation.py +108 -0
  101. waldur_api_client/models/onboarding_justification_documentation_request.py +84 -0
  102. waldur_api_client/models/onboarding_justification_documentation_request_form.py +84 -0
  103. waldur_api_client/models/onboarding_justification_documentation_request_multipart.py +98 -0
  104. waldur_api_client/models/onboarding_justification_request.py +75 -0
  105. waldur_api_client/models/onboarding_verification.py +250 -0
  106. waldur_api_client/models/onboarding_verification_request.py +128 -0
  107. waldur_api_client/models/onboarding_verification_status_enum.py +12 -0
  108. waldur_api_client/models/open_stack_backup_restoration.py +3 -5
  109. waldur_api_client/models/open_stack_backup_restoration_create_request.py +141 -0
  110. waldur_api_client/models/open_stack_backup_restoration_request.py +22 -30
  111. waldur_api_client/models/open_stack_create_floating_ip_request.py +89 -0
  112. waldur_api_client/models/open_stack_create_port_request.py +104 -0
  113. waldur_api_client/models/open_stack_instance.py +13 -29
  114. waldur_api_client/models/open_stack_instance_create_order_attributes.py +67 -54
  115. waldur_api_client/models/open_stack_instance_floating_i_ps_update_request.py +5 -5
  116. waldur_api_client/models/open_stack_instance_ports_update_request.py +5 -5
  117. waldur_api_client/models/open_stack_instance_request.py +1 -67
  118. waldur_api_client/models/open_stack_nested_port_request.py +0 -9
  119. waldur_api_client/models/{open_stack_nested_security_group_request.py → open_stack_security_group_hyperlink_request.py} +14 -14
  120. waldur_api_client/models/open_stack_server_group_hyperlink_request.py +59 -0
  121. waldur_api_client/models/open_stack_tenant_create_order_attributes.py +9 -14
  122. waldur_api_client/models/open_stack_volume_create_order_attributes.py +8 -13
  123. waldur_api_client/models/openstack_instances_list_field_item.py +0 -7
  124. waldur_api_client/models/openstack_instances_retrieve_field_item.py +0 -7
  125. waldur_api_client/models/order_create.py +8 -0
  126. waldur_api_client/models/order_details.py +9 -34
  127. waldur_api_client/models/patched_network_rbac_policy_request.py +85 -0
  128. waldur_api_client/models/patched_onboarding_justification_request.py +77 -0
  129. waldur_api_client/models/patched_onboarding_verification_request.py +128 -0
  130. waldur_api_client/models/patched_open_stack_instance_request.py +1 -67
  131. waldur_api_client/models/patched_project_credit_request.py +13 -0
  132. waldur_api_client/models/patched_project_request.py +1 -2
  133. waldur_api_client/models/patched_project_request_form.py +1 -2
  134. waldur_api_client/models/patched_project_request_multipart.py +1 -2
  135. waldur_api_client/models/project.py +10 -2
  136. waldur_api_client/models/project_credit.py +13 -0
  137. waldur_api_client/models/project_credit_request.py +13 -0
  138. waldur_api_client/models/{rancher_nested_security_group.py → project_hyperlink_request.py} +5 -5
  139. waldur_api_client/models/project_request.py +1 -2
  140. waldur_api_client/models/project_request_form.py +1 -2
  141. waldur_api_client/models/project_request_multipart.py +1 -2
  142. waldur_api_client/models/projects_list_field_item.py +1 -0
  143. waldur_api_client/models/projects_retrieve_field_item.py +1 -0
  144. waldur_api_client/models/protected_round.py +4 -4
  145. waldur_api_client/models/question.py +102 -0
  146. waldur_api_client/models/{open_stack_data_volume.py → question_options.py} +27 -29
  147. waldur_api_client/models/rancher_clusters_list_field_item.py +0 -1
  148. waldur_api_client/models/rancher_clusters_retrieve_field_item.py +0 -1
  149. waldur_api_client/models/rancher_service_create.py +508 -0
  150. waldur_api_client/models/rancher_service_create_marketplace_offering_plugin_options_type_0.py +44 -0
  151. waldur_api_client/models/rancher_service_create_request.py +185 -0
  152. waldur_api_client/models/rancher_service_request.py +16 -19
  153. waldur_api_client/models/rancher_workload_create.py +59 -0
  154. waldur_api_client/models/rancher_workload_create_request.py +59 -0
  155. waldur_api_client/models/resource.py +9 -34
  156. waldur_api_client/models/resource_renew_request.py +83 -0
  157. waldur_api_client/models/resource_renew_request_limits.py +44 -0
  158. waldur_api_client/models/robot_account_details.py +22 -13
  159. waldur_api_client/models/{status_enum.py → round_status.py} +1 -1
  160. waldur_api_client/models/service_provider_checklist_summary.py +98 -0
  161. waldur_api_client/models/slurm_invoices_slurm_package_create_order_attributes.py +4 -9
  162. waldur_api_client/models/time_series_to_s_data.py +69 -0
  163. waldur_api_client/models/to_s_consent_dashboard.py +155 -0
  164. waldur_api_client/models/update_offering_component_request.py +79 -0
  165. waldur_api_client/models/v_mware_virtual_machine_create_order_attributes.py +11 -16
  166. waldur_api_client/models/validation_decision_enum.py +10 -0
  167. waldur_api_client/models/validation_method_enum.py +8 -0
  168. waldur_api_client/models/version_adoption.py +67 -0
  169. waldur_api_client/models/vmware_nested_network.py +0 -25
  170. waldur_api_client/models/vmware_nested_network_request.py +6 -14
  171. {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/METADATA +1 -1
  172. {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/RECORD +174 -101
  173. {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/WHEEL +0 -0
  174. {waldur_api_client-7.8.2.dist-info → waldur_api_client-7.8.4.dist-info}/licenses/LICENSE +0 -0
@@ -7,10 +7,11 @@ from attrs import field as _attrs_field
7
7
  from ..types import UNSET, Unset
8
8
 
9
9
  if TYPE_CHECKING:
10
+ from ..models.open_stack_create_floating_ip_request import OpenStackCreateFloatingIPRequest
11
+ from ..models.open_stack_create_port_request import OpenStackCreatePortRequest
10
12
  from ..models.open_stack_data_volume_request import OpenStackDataVolumeRequest
11
- from ..models.open_stack_nested_floating_ip_request import OpenStackNestedFloatingIPRequest
12
- from ..models.open_stack_nested_port_request import OpenStackNestedPortRequest
13
- from ..models.open_stack_nested_security_group_request import OpenStackNestedSecurityGroupRequest
13
+ from ..models.open_stack_security_group_hyperlink_request import OpenStackSecurityGroupHyperlinkRequest
14
+ from ..models.open_stack_server_group_hyperlink_request import OpenStackServerGroupHyperlinkRequest
14
15
 
15
16
 
16
17
  T = TypeVar("T", bound="OpenStackInstanceCreateOrderAttributes")
@@ -18,41 +19,39 @@ T = TypeVar("T", bound="OpenStackInstanceCreateOrderAttributes")
18
19
 
19
20
  @_attrs_define
20
21
  class OpenStackInstanceCreateOrderAttributes:
21
- """This mixin allows to specify list of fields to be rendered by serializer.
22
- It expects that request is available in serializer's context.
23
-
24
- It is disabled for nested serializers (where parent is another serializer)
25
- but remains active for list views (where parent is a ListSerializer).
26
-
27
- Attributes:
28
- name (str):
29
- flavor (str): The flavor to use for the instance
30
- image (str): The OS image to use for the instance
31
- ports (list['OpenStackNestedPortRequest']): Network ports to attach to the instance
32
- system_volume_size (int): Size of the system volume in MiB. Minimum size is 1024 MiB (1 GiB)
33
- description (Union[Unset, str]):
34
- floating_ips (Union[Unset, list['OpenStackNestedFloatingIPRequest']]): Floating IPs to assign to the instance
35
- system_volume_type (Union[None, Unset, str]): Volume type for the system volume
36
- data_volume_size (Union[Unset, int]): Size of the data volume in MiB. Minimum size is 1024 MiB (1 GiB)
37
- data_volume_type (Union[None, Unset, str]): Volume type for the data volume
38
- ssh_public_key (Union[Unset, str]):
39
- user_data (Union[Unset, str]): Additional data that will be added to instance on provisioning
40
- availability_zone (Union[None, Unset, str]): Availability zone where this instance is located
41
- connect_directly_to_external_network (Union[Unset, bool]): If True, instance will be connected directly to
42
- external network
43
- data_volumes (Union[Unset, list['OpenStackDataVolumeRequest']]): Additional data volumes to attach to the
44
- instance
45
- security_groups (Union[Unset, list['OpenStackNestedSecurityGroupRequest']]): Security groups to attach to the
46
- instance
22
+ """
23
+ Attributes:
24
+ name (str):
25
+ flavor (str): The flavor to use for the instance
26
+ image (str): The OS image to use for the instance
27
+ ports (list['OpenStackCreatePortRequest']): Network ports to attach to the instance
28
+ system_volume_size (int): Size of the system volume in MiB. Minimum size is 1024 MiB (1 GiB)
29
+ description (Union[Unset, str]):
30
+ security_groups (Union[Unset, list['OpenStackSecurityGroupHyperlinkRequest']]): List of security groups to apply
31
+ to the instance
32
+ server_group (Union[Unset, OpenStackServerGroupHyperlinkRequest]):
33
+ floating_ips (Union[Unset, list['OpenStackCreateFloatingIPRequest']]): Floating IPs to assign to the instance
34
+ system_volume_type (Union[None, Unset, str]): Volume type for the system volume
35
+ data_volume_size (Union[Unset, int]): Size of the data volume in MiB. Minimum size is 1024 MiB (1 GiB)
36
+ data_volume_type (Union[None, Unset, str]): Volume type for the data volume
37
+ ssh_public_key (Union[Unset, str]):
38
+ user_data (Union[Unset, str]): Additional data that will be added to instance on provisioning
39
+ availability_zone (Union[None, Unset, str]): Availability zone where this instance is located
40
+ connect_directly_to_external_network (Union[Unset, bool]): If True, instance will be connected directly to
41
+ external network
42
+ data_volumes (Union[Unset, list['OpenStackDataVolumeRequest']]): Additional data volumes to attach to the
43
+ instance
47
44
  """
48
45
 
49
46
  name: str
50
47
  flavor: str
51
48
  image: str
52
- ports: list["OpenStackNestedPortRequest"]
49
+ ports: list["OpenStackCreatePortRequest"]
53
50
  system_volume_size: int
54
51
  description: Union[Unset, str] = UNSET
55
- floating_ips: Union[Unset, list["OpenStackNestedFloatingIPRequest"]] = UNSET
52
+ security_groups: Union[Unset, list["OpenStackSecurityGroupHyperlinkRequest"]] = UNSET
53
+ server_group: Union[Unset, "OpenStackServerGroupHyperlinkRequest"] = UNSET
54
+ floating_ips: Union[Unset, list["OpenStackCreateFloatingIPRequest"]] = UNSET
56
55
  system_volume_type: Union[None, Unset, str] = UNSET
57
56
  data_volume_size: Union[Unset, int] = UNSET
58
57
  data_volume_type: Union[None, Unset, str] = UNSET
@@ -61,7 +60,6 @@ class OpenStackInstanceCreateOrderAttributes:
61
60
  availability_zone: Union[None, Unset, str] = UNSET
62
61
  connect_directly_to_external_network: Union[Unset, bool] = UNSET
63
62
  data_volumes: Union[Unset, list["OpenStackDataVolumeRequest"]] = UNSET
64
- security_groups: Union[Unset, list["OpenStackNestedSecurityGroupRequest"]] = UNSET
65
63
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
66
64
 
67
65
  def to_dict(self) -> dict[str, Any]:
@@ -80,6 +78,17 @@ class OpenStackInstanceCreateOrderAttributes:
80
78
 
81
79
  description = self.description
82
80
 
81
+ security_groups: Union[Unset, list[dict[str, Any]]] = UNSET
82
+ if not isinstance(self.security_groups, Unset):
83
+ security_groups = []
84
+ for security_groups_item_data in self.security_groups:
85
+ security_groups_item = security_groups_item_data.to_dict()
86
+ security_groups.append(security_groups_item)
87
+
88
+ server_group: Union[Unset, dict[str, Any]] = UNSET
89
+ if not isinstance(self.server_group, Unset):
90
+ server_group = self.server_group.to_dict()
91
+
83
92
  floating_ips: Union[Unset, list[dict[str, Any]]] = UNSET
84
93
  if not isinstance(self.floating_ips, Unset):
85
94
  floating_ips = []
@@ -120,13 +129,6 @@ class OpenStackInstanceCreateOrderAttributes:
120
129
  data_volumes_item = data_volumes_item_data.to_dict()
121
130
  data_volumes.append(data_volumes_item)
122
131
 
123
- security_groups: Union[Unset, list[dict[str, Any]]] = UNSET
124
- if not isinstance(self.security_groups, Unset):
125
- security_groups = []
126
- for security_groups_item_data in self.security_groups:
127
- security_groups_item = security_groups_item_data.to_dict()
128
- security_groups.append(security_groups_item)
129
-
130
132
  field_dict: dict[str, Any] = {}
131
133
  field_dict.update(self.additional_properties)
132
134
  field_dict.update(
@@ -140,6 +142,10 @@ class OpenStackInstanceCreateOrderAttributes:
140
142
  )
141
143
  if description is not UNSET:
142
144
  field_dict["description"] = description
145
+ if security_groups is not UNSET:
146
+ field_dict["security_groups"] = security_groups
147
+ if server_group is not UNSET:
148
+ field_dict["server_group"] = server_group
143
149
  if floating_ips is not UNSET:
144
150
  field_dict["floating_ips"] = floating_ips
145
151
  if system_volume_type is not UNSET:
@@ -158,17 +164,16 @@ class OpenStackInstanceCreateOrderAttributes:
158
164
  field_dict["connect_directly_to_external_network"] = connect_directly_to_external_network
159
165
  if data_volumes is not UNSET:
160
166
  field_dict["data_volumes"] = data_volumes
161
- if security_groups is not UNSET:
162
- field_dict["security_groups"] = security_groups
163
167
 
164
168
  return field_dict
165
169
 
166
170
  @classmethod
167
171
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
172
+ from ..models.open_stack_create_floating_ip_request import OpenStackCreateFloatingIPRequest
173
+ from ..models.open_stack_create_port_request import OpenStackCreatePortRequest
168
174
  from ..models.open_stack_data_volume_request import OpenStackDataVolumeRequest
169
- from ..models.open_stack_nested_floating_ip_request import OpenStackNestedFloatingIPRequest
170
- from ..models.open_stack_nested_port_request import OpenStackNestedPortRequest
171
- from ..models.open_stack_nested_security_group_request import OpenStackNestedSecurityGroupRequest
175
+ from ..models.open_stack_security_group_hyperlink_request import OpenStackSecurityGroupHyperlinkRequest
176
+ from ..models.open_stack_server_group_hyperlink_request import OpenStackServerGroupHyperlinkRequest
172
177
 
173
178
  d = dict(src_dict)
174
179
  name = d.pop("name")
@@ -180,7 +185,7 @@ class OpenStackInstanceCreateOrderAttributes:
180
185
  ports = []
181
186
  _ports = d.pop("ports")
182
187
  for ports_item_data in _ports:
183
- ports_item = OpenStackNestedPortRequest.from_dict(ports_item_data)
188
+ ports_item = OpenStackCreatePortRequest.from_dict(ports_item_data)
184
189
 
185
190
  ports.append(ports_item)
186
191
 
@@ -188,10 +193,24 @@ class OpenStackInstanceCreateOrderAttributes:
188
193
 
189
194
  description = d.pop("description", UNSET)
190
195
 
196
+ security_groups = []
197
+ _security_groups = d.pop("security_groups", UNSET)
198
+ for security_groups_item_data in _security_groups or []:
199
+ security_groups_item = OpenStackSecurityGroupHyperlinkRequest.from_dict(security_groups_item_data)
200
+
201
+ security_groups.append(security_groups_item)
202
+
203
+ _server_group = d.pop("server_group", UNSET)
204
+ server_group: Union[Unset, OpenStackServerGroupHyperlinkRequest]
205
+ if isinstance(_server_group, Unset):
206
+ server_group = UNSET
207
+ else:
208
+ server_group = OpenStackServerGroupHyperlinkRequest.from_dict(_server_group)
209
+
191
210
  floating_ips = []
192
211
  _floating_ips = d.pop("floating_ips", UNSET)
193
212
  for floating_ips_item_data in _floating_ips or []:
194
- floating_ips_item = OpenStackNestedFloatingIPRequest.from_dict(floating_ips_item_data)
213
+ floating_ips_item = OpenStackCreateFloatingIPRequest.from_dict(floating_ips_item_data)
195
214
 
196
215
  floating_ips.append(floating_ips_item)
197
216
 
@@ -237,13 +256,6 @@ class OpenStackInstanceCreateOrderAttributes:
237
256
 
238
257
  data_volumes.append(data_volumes_item)
239
258
 
240
- security_groups = []
241
- _security_groups = d.pop("security_groups", UNSET)
242
- for security_groups_item_data in _security_groups or []:
243
- security_groups_item = OpenStackNestedSecurityGroupRequest.from_dict(security_groups_item_data)
244
-
245
- security_groups.append(security_groups_item)
246
-
247
259
  open_stack_instance_create_order_attributes = cls(
248
260
  name=name,
249
261
  flavor=flavor,
@@ -251,6 +263,8 @@ class OpenStackInstanceCreateOrderAttributes:
251
263
  ports=ports,
252
264
  system_volume_size=system_volume_size,
253
265
  description=description,
266
+ security_groups=security_groups,
267
+ server_group=server_group,
254
268
  floating_ips=floating_ips,
255
269
  system_volume_type=system_volume_type,
256
270
  data_volume_size=data_volume_size,
@@ -260,7 +274,6 @@ class OpenStackInstanceCreateOrderAttributes:
260
274
  availability_zone=availability_zone,
261
275
  connect_directly_to_external_network=connect_directly_to_external_network,
262
276
  data_volumes=data_volumes,
263
- security_groups=security_groups,
264
277
  )
265
278
 
266
279
  open_stack_instance_create_order_attributes.additional_properties = d
@@ -7,7 +7,7 @@ from attrs import field as _attrs_field
7
7
  from ..types import UNSET, Unset
8
8
 
9
9
  if TYPE_CHECKING:
10
- from ..models.open_stack_nested_floating_ip_request import OpenStackNestedFloatingIPRequest
10
+ from ..models.open_stack_create_floating_ip_request import OpenStackCreateFloatingIPRequest
11
11
 
12
12
 
13
13
  T = TypeVar("T", bound="OpenStackInstanceFloatingIPsUpdateRequest")
@@ -17,10 +17,10 @@ T = TypeVar("T", bound="OpenStackInstanceFloatingIPsUpdateRequest")
17
17
  class OpenStackInstanceFloatingIPsUpdateRequest:
18
18
  """
19
19
  Attributes:
20
- floating_ips (Union[Unset, list['OpenStackNestedFloatingIPRequest']]):
20
+ floating_ips (Union[Unset, list['OpenStackCreateFloatingIPRequest']]):
21
21
  """
22
22
 
23
- floating_ips: Union[Unset, list["OpenStackNestedFloatingIPRequest"]] = UNSET
23
+ floating_ips: Union[Unset, list["OpenStackCreateFloatingIPRequest"]] = UNSET
24
24
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
25
25
 
26
26
  def to_dict(self) -> dict[str, Any]:
@@ -41,13 +41,13 @@ class OpenStackInstanceFloatingIPsUpdateRequest:
41
41
 
42
42
  @classmethod
43
43
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
44
- from ..models.open_stack_nested_floating_ip_request import OpenStackNestedFloatingIPRequest
44
+ from ..models.open_stack_create_floating_ip_request import OpenStackCreateFloatingIPRequest
45
45
 
46
46
  d = dict(src_dict)
47
47
  floating_ips = []
48
48
  _floating_ips = d.pop("floating_ips", UNSET)
49
49
  for floating_ips_item_data in _floating_ips or []:
50
- floating_ips_item = OpenStackNestedFloatingIPRequest.from_dict(floating_ips_item_data)
50
+ floating_ips_item = OpenStackCreateFloatingIPRequest.from_dict(floating_ips_item_data)
51
51
 
52
52
  floating_ips.append(floating_ips_item)
53
53
 
@@ -5,7 +5,7 @@ from attrs import define as _attrs_define
5
5
  from attrs import field as _attrs_field
6
6
 
7
7
  if TYPE_CHECKING:
8
- from ..models.open_stack_nested_port_request import OpenStackNestedPortRequest
8
+ from ..models.open_stack_create_port_request import OpenStackCreatePortRequest
9
9
 
10
10
 
11
11
  T = TypeVar("T", bound="OpenStackInstancePortsUpdateRequest")
@@ -15,10 +15,10 @@ T = TypeVar("T", bound="OpenStackInstancePortsUpdateRequest")
15
15
  class OpenStackInstancePortsUpdateRequest:
16
16
  """
17
17
  Attributes:
18
- ports (list['OpenStackNestedPortRequest']):
18
+ ports (list['OpenStackCreatePortRequest']):
19
19
  """
20
20
 
21
- ports: list["OpenStackNestedPortRequest"]
21
+ ports: list["OpenStackCreatePortRequest"]
22
22
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
23
23
 
24
24
  def to_dict(self) -> dict[str, Any]:
@@ -39,13 +39,13 @@ class OpenStackInstancePortsUpdateRequest:
39
39
 
40
40
  @classmethod
41
41
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
42
- from ..models.open_stack_nested_port_request import OpenStackNestedPortRequest
42
+ from ..models.open_stack_create_port_request import OpenStackCreatePortRequest
43
43
 
44
44
  d = dict(src_dict)
45
45
  ports = []
46
46
  _ports = d.pop("ports")
47
47
  for ports_item_data in _ports:
48
- ports_item = OpenStackNestedPortRequest.from_dict(ports_item_data)
48
+ ports_item = OpenStackCreatePortRequest.from_dict(ports_item_data)
49
49
 
50
50
  ports.append(ports_item)
51
51
 
@@ -1,15 +1,11 @@
1
1
  from collections.abc import Mapping
2
- from typing import TYPE_CHECKING, Any, TypeVar, Union, cast
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="OpenStackInstanceRequest")
14
10
 
15
11
 
@@ -19,17 +15,10 @@ class OpenStackInstanceRequest:
19
15
  Attributes:
20
16
  name (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: str
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 OpenStackInstanceRequest:
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(
@@ -65,55 +35,19 @@ class OpenStackInstanceRequest:
65
35
  )
66
36
  if description is not UNSET:
67
37
  field_dict["description"] = description
68
- if system_volume_type is not UNSET:
69
- field_dict["system_volume_type"] = system_volume_type
70
- if data_volume_type is not UNSET:
71
- field_dict["data_volume_type"] = data_volume_type
72
- if data_volumes is not UNSET:
73
- field_dict["data_volumes"] = data_volumes
74
38
 
75
39
  return field_dict
76
40
 
77
41
  @classmethod
78
42
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
79
- from ..models.open_stack_data_volume_request import OpenStackDataVolumeRequest
80
-
81
43
  d = dict(src_dict)
82
44
  name = d.pop("name")
83
45
 
84
46
  description = d.pop("description", UNSET)
85
47
 
86
- def _parse_system_volume_type(data: object) -> Union[None, Unset, str]:
87
- if data is None:
88
- return data
89
- if isinstance(data, Unset):
90
- return data
91
- return cast(Union[None, Unset, str], data)
92
-
93
- system_volume_type = _parse_system_volume_type(d.pop("system_volume_type", UNSET))
94
-
95
- def _parse_data_volume_type(data: object) -> Union[None, Unset, str]:
96
- if data is None:
97
- return data
98
- if isinstance(data, Unset):
99
- return data
100
- return cast(Union[None, Unset, str], data)
101
-
102
- data_volume_type = _parse_data_volume_type(d.pop("data_volume_type", UNSET))
103
-
104
- data_volumes = []
105
- _data_volumes = d.pop("data_volumes", UNSET)
106
- for data_volumes_item_data in _data_volumes or []:
107
- data_volumes_item = OpenStackDataVolumeRequest.from_dict(data_volumes_item_data)
108
-
109
- data_volumes.append(data_volumes_item)
110
-
111
48
  open_stack_instance_request = cls(
112
49
  name=name,
113
50
  description=description,
114
- system_volume_type=system_volume_type,
115
- data_volume_type=data_volume_type,
116
- data_volumes=data_volumes,
117
51
  )
118
52
 
119
53
  open_stack_instance_request.additional_properties = d
@@ -19,12 +19,10 @@ class OpenStackNestedPortRequest:
19
19
  Attributes:
20
20
  fixed_ips (Union[Unset, list['OpenStackFixedIpRequest']]):
21
21
  subnet (Union[None, Unset, str]): Subnet to which this port belongs
22
- port (Union[Unset, str]):
23
22
  """
24
23
 
25
24
  fixed_ips: Union[Unset, list["OpenStackFixedIpRequest"]] = UNSET
26
25
  subnet: Union[None, Unset, str] = UNSET
27
- port: Union[Unset, str] = UNSET
28
26
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
29
27
 
30
28
  def to_dict(self) -> dict[str, Any]:
@@ -41,8 +39,6 @@ class OpenStackNestedPortRequest:
41
39
  else:
42
40
  subnet = self.subnet
43
41
 
44
- port = self.port
45
-
46
42
  field_dict: dict[str, Any] = {}
47
43
  field_dict.update(self.additional_properties)
48
44
  field_dict.update({})
@@ -50,8 +46,6 @@ class OpenStackNestedPortRequest:
50
46
  field_dict["fixed_ips"] = fixed_ips
51
47
  if subnet is not UNSET:
52
48
  field_dict["subnet"] = subnet
53
- if port is not UNSET:
54
- field_dict["port"] = port
55
49
 
56
50
  return field_dict
57
51
 
@@ -76,12 +70,9 @@ class OpenStackNestedPortRequest:
76
70
 
77
71
  subnet = _parse_subnet(d.pop("subnet", UNSET))
78
72
 
79
- port = d.pop("port", UNSET)
80
-
81
73
  open_stack_nested_port_request = cls(
82
74
  fixed_ips=fixed_ips,
83
75
  subnet=subnet,
84
- port=port,
85
76
  )
86
77
 
87
78
  open_stack_nested_port_request.additional_properties = d
@@ -1,22 +1,20 @@
1
1
  from collections.abc import Mapping
2
- from typing import Any, TypeVar, Union
2
+ from typing import Any, TypeVar
3
3
 
4
4
  from attrs import define as _attrs_define
5
5
  from attrs import field as _attrs_field
6
6
 
7
- from ..types import UNSET, Unset
8
-
9
- T = TypeVar("T", bound="OpenStackNestedSecurityGroupRequest")
7
+ T = TypeVar("T", bound="OpenStackSecurityGroupHyperlinkRequest")
10
8
 
11
9
 
12
10
  @_attrs_define
13
- class OpenStackNestedSecurityGroupRequest:
11
+ class OpenStackSecurityGroupHyperlinkRequest:
14
12
  """
15
13
  Attributes:
16
- url (Union[Unset, str]):
14
+ url (str):
17
15
  """
18
16
 
19
- url: Union[Unset, str] = UNSET
17
+ url: str
20
18
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
21
19
 
22
20
  def to_dict(self) -> dict[str, Any]:
@@ -24,23 +22,25 @@ class OpenStackNestedSecurityGroupRequest:
24
22
 
25
23
  field_dict: dict[str, Any] = {}
26
24
  field_dict.update(self.additional_properties)
27
- field_dict.update({})
28
- if url is not UNSET:
29
- field_dict["url"] = url
25
+ field_dict.update(
26
+ {
27
+ "url": url,
28
+ }
29
+ )
30
30
 
31
31
  return field_dict
32
32
 
33
33
  @classmethod
34
34
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
35
35
  d = dict(src_dict)
36
- url = d.pop("url", UNSET)
36
+ url = d.pop("url")
37
37
 
38
- open_stack_nested_security_group_request = cls(
38
+ open_stack_security_group_hyperlink_request = cls(
39
39
  url=url,
40
40
  )
41
41
 
42
- open_stack_nested_security_group_request.additional_properties = d
43
- return open_stack_nested_security_group_request
42
+ open_stack_security_group_hyperlink_request.additional_properties = d
43
+ return open_stack_security_group_hyperlink_request
44
44
 
45
45
  @property
46
46
  def additional_keys(self) -> list[str]:
@@ -0,0 +1,59 @@
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="OpenStackServerGroupHyperlinkRequest")
8
+
9
+
10
+ @_attrs_define
11
+ class OpenStackServerGroupHyperlinkRequest:
12
+ """
13
+ Attributes:
14
+ url (str):
15
+ """
16
+
17
+ url: str
18
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
19
+
20
+ def to_dict(self) -> dict[str, Any]:
21
+ url = self.url
22
+
23
+ field_dict: dict[str, Any] = {}
24
+ field_dict.update(self.additional_properties)
25
+ field_dict.update(
26
+ {
27
+ "url": url,
28
+ }
29
+ )
30
+
31
+ return field_dict
32
+
33
+ @classmethod
34
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
35
+ d = dict(src_dict)
36
+ url = d.pop("url")
37
+
38
+ open_stack_server_group_hyperlink_request = cls(
39
+ url=url,
40
+ )
41
+
42
+ open_stack_server_group_hyperlink_request.additional_properties = d
43
+ return open_stack_server_group_hyperlink_request
44
+
45
+ @property
46
+ def additional_keys(self) -> list[str]:
47
+ return list(self.additional_properties.keys())
48
+
49
+ def __getitem__(self, key: str) -> Any:
50
+ return self.additional_properties[key]
51
+
52
+ def __setitem__(self, key: str, value: Any) -> None:
53
+ self.additional_properties[key] = value
54
+
55
+ def __delitem__(self, key: str) -> None:
56
+ del self.additional_properties[key]
57
+
58
+ def __contains__(self, key: str) -> bool:
59
+ return key in self.additional_properties
@@ -11,20 +11,15 @@ T = TypeVar("T", bound="OpenStackTenantCreateOrderAttributes")
11
11
 
12
12
  @_attrs_define
13
13
  class OpenStackTenantCreateOrderAttributes:
14
- """This mixin allows to specify list of fields to be rendered by serializer.
15
- It expects that request is available in serializer's context.
16
-
17
- It is disabled for nested serializers (where parent is another serializer)
18
- but remains active for list views (where parent is a ListSerializer).
19
-
20
- Attributes:
21
- name (str):
22
- description (Union[Unset, str]):
23
- subnet_cidr (Union[Unset, str]): Default: '192.168.42.0/24'.
24
- skip_connection_extnet (Union[Unset, bool]): Default: False.
25
- skip_creation_of_default_router (Union[Unset, bool]): Default: False.
26
- availability_zone (Union[Unset, str]): Optional availability group. Will be used for all instances provisioned
27
- in this tenant
14
+ """
15
+ Attributes:
16
+ name (str):
17
+ description (Union[Unset, str]):
18
+ subnet_cidr (Union[Unset, str]): Default: '192.168.42.0/24'.
19
+ skip_connection_extnet (Union[Unset, bool]): Default: False.
20
+ skip_creation_of_default_router (Union[Unset, bool]): Default: False.
21
+ availability_zone (Union[Unset, str]): Optional availability group. Will be used for all instances provisioned
22
+ in this tenant
28
23
  """
29
24
 
30
25
  name: str
@@ -11,19 +11,14 @@ T = TypeVar("T", bound="OpenStackVolumeCreateOrderAttributes")
11
11
 
12
12
  @_attrs_define
13
13
  class OpenStackVolumeCreateOrderAttributes:
14
- """This mixin allows to specify list of fields to be rendered by serializer.
15
- It expects that request is available in serializer's context.
16
-
17
- It is disabled for nested serializers (where parent is another serializer)
18
- but remains active for list views (where parent is a ListSerializer).
19
-
20
- Attributes:
21
- name (str):
22
- description (Union[Unset, str]):
23
- image (Union[None, Unset, str]): Image that this volume was created from, if any
24
- size (Union[None, Unset, int]): Size in MiB
25
- availability_zone (Union[None, Unset, str]): Availability zone where this volume is located
26
- type_ (Union[None, Unset, str]): Type of the volume (e.g. SSD, HDD)
14
+ """
15
+ Attributes:
16
+ name (str):
17
+ description (Union[Unset, str]):
18
+ image (Union[None, Unset, str]): Image that this volume was created from, if any
19
+ size (Union[None, Unset, int]): Size in MiB
20
+ availability_zone (Union[None, Unset, str]): Availability zone where this volume is located
21
+ type_ (Union[None, Unset, str]): Type of the volume (e.g. SSD, HDD)
27
22
  """
28
23
 
29
24
  name: str
@@ -15,21 +15,16 @@ class OpenstackInstancesListFieldItem(str, Enum):
15
15
  CUSTOMER_ABBREVIATION = "customer_abbreviation"
16
16
  CUSTOMER_NAME = "customer_name"
17
17
  CUSTOMER_NATIVE_NAME = "customer_native_name"
18
- DATA_VOLUMES = "data_volumes"
19
- DATA_VOLUME_SIZE = "data_volume_size"
20
- DATA_VOLUME_TYPE = "data_volume_type"
21
18
  DESCRIPTION = "description"
22
19
  DISK = "disk"
23
20
  ERROR_MESSAGE = "error_message"
24
21
  ERROR_TRACEBACK = "error_traceback"
25
22
  EXTERNAL_ADDRESS = "external_address"
26
23
  EXTERNAL_IPS = "external_ips"
27
- FLAVOR = "flavor"
28
24
  FLAVOR_DISK = "flavor_disk"
29
25
  FLAVOR_NAME = "flavor_name"
30
26
  FLOATING_IPS = "floating_ips"
31
27
  HYPERVISOR_HOSTNAME = "hypervisor_hostname"
32
- IMAGE = "image"
33
28
  IMAGE_NAME = "image_name"
34
29
  INTERNAL_IPS = "internal_ips"
35
30
  IS_LIMIT_BASED = "is_limit_based"
@@ -68,8 +63,6 @@ class OpenstackInstancesListFieldItem(str, Enum):
68
63
  SSH_PUBLIC_KEY = "ssh_public_key"
69
64
  START_TIME = "start_time"
70
65
  STATE = "state"
71
- SYSTEM_VOLUME_SIZE = "system_volume_size"
72
- SYSTEM_VOLUME_TYPE = "system_volume_type"
73
66
  TENANT = "tenant"
74
67
  TENANT_UUID = "tenant_uuid"
75
68
  URL = "url"