waldur-api-client 7.7.7__py3-none-any.whl → 7.7.8__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/customer_permissions_reviews/customer_permissions_reviews_count.py +19 -0
- waldur_api_client/api/customer_permissions_reviews/customer_permissions_reviews_list.py +19 -0
- waldur_api_client/api/customers/customers_users_list.py +141 -53
- waldur_api_client/api/invoices/invoices_items_retrieve.py +20 -0
- waldur_api_client/api/managed_rancher_cluster_resources/__init__.py +1 -0
- waldur_api_client/api/managed_rancher_cluster_resources/managed_rancher_cluster_resources_add_node.py +162 -0
- waldur_api_client/api/managed_rancher_cluster_resources/managed_rancher_cluster_resources_count.py +172 -0
- waldur_api_client/api/managed_rancher_cluster_resources/managed_rancher_cluster_resources_list.py +196 -0
- waldur_api_client/api/managed_rancher_cluster_resources/managed_rancher_cluster_resources_retrieve.py +171 -0
- waldur_api_client/api/marketplace_course_accounts/__init__.py +1 -0
- waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_count.py +244 -0
- waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_create.py +148 -0
- waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_create_bulk.py +152 -0
- waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_destroy.py +89 -0
- waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_list.py +245 -0
- waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_retrieve.py +140 -0
- waldur_api_client/api/marketplace_customer_service_accounts/marketplace_customer_service_accounts_count.py +25 -0
- waldur_api_client/api/marketplace_customer_service_accounts/marketplace_customer_service_accounts_list.py +25 -0
- waldur_api_client/api/marketplace_project_service_accounts/marketplace_project_service_accounts_count.py +25 -0
- waldur_api_client/api/marketplace_project_service_accounts/marketplace_project_service_accounts_list.py +25 -0
- waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_course_accounts_list.py +284 -0
- waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_project_service_accounts_list.py +29 -0
- waldur_api_client/api/project_permissions_reviews/__init__.py +1 -0
- waldur_api_client/api/project_permissions_reviews/project_permissions_reviews_close.py +91 -0
- waldur_api_client/api/project_permissions_reviews/project_permissions_reviews_count.py +266 -0
- waldur_api_client/api/project_permissions_reviews/project_permissions_reviews_list.py +269 -0
- waldur_api_client/api/project_permissions_reviews/project_permissions_reviews_retrieve.py +142 -0
- waldur_api_client/api/projects/projects_other_users_list.py +98 -23
- waldur_api_client/api/projects/projects_sync_user_roles.py +10 -9
- waldur_api_client/api/support_issue_statuses/__init__.py +1 -0
- waldur_api_client/api/support_issue_statuses/support_issue_statuses_count.py +172 -0
- waldur_api_client/api/support_issue_statuses/support_issue_statuses_create.py +148 -0
- waldur_api_client/api/support_issue_statuses/support_issue_statuses_destroy.py +89 -0
- waldur_api_client/api/support_issue_statuses/support_issue_statuses_list.py +173 -0
- waldur_api_client/api/support_issue_statuses/support_issue_statuses_partial_update.py +162 -0
- waldur_api_client/api/support_issue_statuses/support_issue_statuses_retrieve.py +140 -0
- waldur_api_client/api/support_issue_statuses/support_issue_statuses_update.py +162 -0
- waldur_api_client/api/user_group_invitations/user_group_invitations_submit_request.py +12 -12
- waldur_api_client/api/user_invitations/user_invitations_count.py +30 -0
- waldur_api_client/api/user_invitations/user_invitations_list.py +30 -0
- waldur_api_client/api/user_permission_requests/user_permission_requests_cancel_request.py +146 -0
- waldur_api_client/models/__init__.py +76 -4
- waldur_api_client/models/cancel_request_response.py +75 -0
- waldur_api_client/models/constance_settings.py +9 -0
- waldur_api_client/models/constance_settings_request.py +9 -0
- waldur_api_client/models/course_account.py +188 -0
- waldur_api_client/models/course_account_create_nested.py +68 -0
- waldur_api_client/models/course_account_create_nested_request.py +68 -0
- waldur_api_client/models/course_account_request.py +89 -0
- waldur_api_client/models/course_accounts_bulk_create.py +82 -0
- waldur_api_client/models/course_accounts_bulk_create_request.py +82 -0
- waldur_api_client/models/customer.py +9 -0
- waldur_api_client/models/customer_permission_review.py +16 -16
- waldur_api_client/models/customer_request.py +9 -0
- waldur_api_client/models/customer_service_account.py +9 -0
- waldur_api_client/models/customers_list_field_item.py +1 -0
- waldur_api_client/models/customers_retrieve_field_item.py +1 -0
- waldur_api_client/models/customers_users_list_o.py +9 -0
- waldur_api_client/models/customers_users_list_organization_role_item_type_0.py +10 -0
- waldur_api_client/models/customers_users_list_project_role_item_type_0.py +10 -0
- waldur_api_client/models/dependency_logic_operator_enum.py +9 -0
- waldur_api_client/models/event_subscription.py +1 -1
- waldur_api_client/models/event_types_enum.py +4 -0
- waldur_api_client/models/group_invitation.py +9 -0
- waldur_api_client/models/invitation.py +9 -0
- waldur_api_client/models/invoices_items_retrieve_o.py +15 -0
- waldur_api_client/models/issue_status.py +103 -0
- waldur_api_client/models/issue_status_request.py +78 -0
- waldur_api_client/models/issue_status_type_enum.py +9 -0
- waldur_api_client/models/kind_enum.py +10 -0
- waldur_api_client/models/managed_rancher_cluster_resources_list_field_item.py +82 -0
- waldur_api_client/models/managed_rancher_cluster_resources_retrieve_field_item.py +82 -0
- waldur_api_client/models/managed_rancher_create_node_request.py +186 -0
- waldur_api_client/models/marketplace_course_accounts_count_state_item.py +10 -0
- waldur_api_client/models/marketplace_course_accounts_list_state_item.py +10 -0
- waldur_api_client/models/marketplace_customer_service_accounts_count_state_item.py +10 -0
- waldur_api_client/models/marketplace_customer_service_accounts_list_state_item.py +10 -0
- waldur_api_client/models/marketplace_project_service_accounts_count_state_item.py +10 -0
- waldur_api_client/models/marketplace_project_service_accounts_list_state_item.py +10 -0
- waldur_api_client/models/marketplace_service_providers_course_accounts_list_state_item.py +10 -0
- waldur_api_client/models/marketplace_service_providers_project_service_accounts_list_state_item.py +10 -0
- waldur_api_client/models/marketplace_service_providers_projects_list_field_item.py +1 -0
- waldur_api_client/models/nested_security_group_rule.py +223 -0
- waldur_api_client/models/{open_stack_nested_security_group_rules_item.py → nested_security_group_rule_request.py} +67 -76
- waldur_api_client/models/open_stack_backup_restoration_request.py +0 -22
- waldur_api_client/models/open_stack_fixed_ip.py +13 -3
- waldur_api_client/models/open_stack_fixed_ip_request.py +7 -2
- waldur_api_client/models/open_stack_instance_create_order_attributes.py +20 -20
- waldur_api_client/models/open_stack_nested_security_group.py +16 -16
- waldur_api_client/models/open_stack_port_ip_update_request.py +6 -2
- waldur_api_client/models/open_stack_static_route.py +13 -4
- waldur_api_client/models/open_stack_static_route_request.py +7 -3
- waldur_api_client/models/open_stack_sub_net.py +15 -2
- waldur_api_client/models/open_stack_sub_net_allocation_pool.py +27 -8
- waldur_api_client/models/open_stack_sub_net_allocation_pool_request.py +14 -5
- waldur_api_client/models/open_stack_sub_net_request.py +15 -2
- waldur_api_client/models/patched_customer_request.py +9 -0
- waldur_api_client/models/patched_issue_status_request.py +76 -0
- waldur_api_client/models/patched_open_stack_sub_net_request.py +15 -2
- waldur_api_client/models/patched_project_request.py +17 -0
- waldur_api_client/models/patched_question_admin_request.py +17 -0
- waldur_api_client/models/patched_rancher_service_request.py +1 -1
- waldur_api_client/models/permission_request.py +16 -0
- waldur_api_client/models/project.py +17 -0
- waldur_api_client/models/project_permission_review.py +166 -0
- waldur_api_client/models/project_permissions_reviews_count_o_item.py +11 -0
- waldur_api_client/models/project_permissions_reviews_list_o_item.py +11 -0
- waldur_api_client/models/project_request.py +17 -0
- waldur_api_client/models/project_service_account.py +9 -0
- waldur_api_client/models/projects_list_field_item.py +1 -0
- waldur_api_client/models/projects_other_users_list_o.py +9 -0
- waldur_api_client/models/projects_retrieve_field_item.py +1 -0
- waldur_api_client/models/proposal.py +8 -0
- waldur_api_client/models/proposal_review.py +8 -0
- waldur_api_client/models/question_admin.py +17 -0
- waldur_api_client/models/question_admin_request.py +17 -0
- waldur_api_client/models/rancher_nested_public_ip.py +25 -7
- waldur_api_client/models/rancher_service.py +1 -1
- waldur_api_client/models/rancher_service_request.py +1 -1
- waldur_api_client/models/rmq_connection.py +8 -3
- waldur_api_client/models/rmq_subscription.py +7 -3
- waldur_api_client/models/robot_account.py +9 -17
- waldur_api_client/models/robot_account_details.py +9 -17
- waldur_api_client/models/service_account_state.py +10 -0
- waldur_api_client/models/submit_request_response.py +75 -0
- waldur_api_client/models/visible_invitation_details.py +9 -0
- {waldur_api_client-7.7.7.dist-info → waldur_api_client-7.7.8.dist-info}/METADATA +1 -1
- {waldur_api_client-7.7.7.dist-info → waldur_api_client-7.7.8.dist-info}/RECORD +130 -69
- waldur_api_client/models/robot_account_states.py +0 -13
- {waldur_api_client-7.7.7.dist-info → waldur_api_client-7.7.8.dist-info}/LICENSE +0 -0
- {waldur_api_client-7.7.7.dist-info → waldur_api_client-7.7.8.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
from enum import Enum
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ManagedRancherClusterResourcesListFieldItem(str, Enum):
|
|
5
|
+
ATTRIBUTES = "attributes"
|
|
6
|
+
AVAILABLE_ACTIONS = "available_actions"
|
|
7
|
+
BACKEND_ID = "backend_id"
|
|
8
|
+
BACKEND_METADATA = "backend_metadata"
|
|
9
|
+
CAN_TERMINATE = "can_terminate"
|
|
10
|
+
CATEGORY_ICON = "category_icon"
|
|
11
|
+
CATEGORY_TITLE = "category_title"
|
|
12
|
+
CATEGORY_UUID = "category_uuid"
|
|
13
|
+
CREATED = "created"
|
|
14
|
+
CREATION_ORDER = "creation_order"
|
|
15
|
+
CURRENT_USAGES = "current_usages"
|
|
16
|
+
CUSTOMER_NAME = "customer_name"
|
|
17
|
+
CUSTOMER_SLUG = "customer_slug"
|
|
18
|
+
CUSTOMER_UUID = "customer_uuid"
|
|
19
|
+
DESCRIPTION = "description"
|
|
20
|
+
DOWNSCALED = "downscaled"
|
|
21
|
+
EFFECTIVE_ID = "effective_id"
|
|
22
|
+
ENDPOINTS = "endpoints"
|
|
23
|
+
END_DATE = "end_date"
|
|
24
|
+
END_DATE_REQUESTED_BY = "end_date_requested_by"
|
|
25
|
+
ERROR_MESSAGE = "error_message"
|
|
26
|
+
ERROR_TRACEBACK = "error_traceback"
|
|
27
|
+
IS_LIMIT_BASED = "is_limit_based"
|
|
28
|
+
IS_USAGE_BASED = "is_usage_based"
|
|
29
|
+
LAST_SYNC = "last_sync"
|
|
30
|
+
LIMITS = "limits"
|
|
31
|
+
LIMIT_USAGE = "limit_usage"
|
|
32
|
+
MODIFIED = "modified"
|
|
33
|
+
NAME = "name"
|
|
34
|
+
OFFERING = "offering"
|
|
35
|
+
OFFERING_BILLABLE = "offering_billable"
|
|
36
|
+
OFFERING_CUSTOMER_UUID = "offering_customer_uuid"
|
|
37
|
+
OFFERING_DESCRIPTION = "offering_description"
|
|
38
|
+
OFFERING_IMAGE = "offering_image"
|
|
39
|
+
OFFERING_NAME = "offering_name"
|
|
40
|
+
OFFERING_PLUGIN_OPTIONS = "offering_plugin_options"
|
|
41
|
+
OFFERING_SHARED = "offering_shared"
|
|
42
|
+
OFFERING_SLUG = "offering_slug"
|
|
43
|
+
OFFERING_THUMBNAIL = "offering_thumbnail"
|
|
44
|
+
OFFERING_TYPE = "offering_type"
|
|
45
|
+
OFFERING_UUID = "offering_uuid"
|
|
46
|
+
OPTIONS = "options"
|
|
47
|
+
ORDER_IN_PROGRESS = "order_in_progress"
|
|
48
|
+
PARENT_NAME = "parent_name"
|
|
49
|
+
PARENT_OFFERING_NAME = "parent_offering_name"
|
|
50
|
+
PARENT_OFFERING_SLUG = "parent_offering_slug"
|
|
51
|
+
PARENT_OFFERING_UUID = "parent_offering_uuid"
|
|
52
|
+
PARENT_UUID = "parent_uuid"
|
|
53
|
+
PAUSED = "paused"
|
|
54
|
+
PLAN = "plan"
|
|
55
|
+
PLAN_DESCRIPTION = "plan_description"
|
|
56
|
+
PLAN_NAME = "plan_name"
|
|
57
|
+
PLAN_UNIT = "plan_unit"
|
|
58
|
+
PLAN_UUID = "plan_uuid"
|
|
59
|
+
PROJECT = "project"
|
|
60
|
+
PROJECT_DESCRIPTION = "project_description"
|
|
61
|
+
PROJECT_END_DATE = "project_end_date"
|
|
62
|
+
PROJECT_END_DATE_REQUESTED_BY = "project_end_date_requested_by"
|
|
63
|
+
PROJECT_NAME = "project_name"
|
|
64
|
+
PROJECT_SLUG = "project_slug"
|
|
65
|
+
PROJECT_UUID = "project_uuid"
|
|
66
|
+
PROVIDER_NAME = "provider_name"
|
|
67
|
+
PROVIDER_UUID = "provider_uuid"
|
|
68
|
+
REPORT = "report"
|
|
69
|
+
RESOURCE_TYPE = "resource_type"
|
|
70
|
+
RESOURCE_UUID = "resource_uuid"
|
|
71
|
+
RESTRICT_MEMBER_ACCESS = "restrict_member_access"
|
|
72
|
+
SCOPE = "scope"
|
|
73
|
+
SERVICE_SETTINGS_UUID = "service_settings_uuid"
|
|
74
|
+
SLUG = "slug"
|
|
75
|
+
STATE = "state"
|
|
76
|
+
URL = "url"
|
|
77
|
+
USERNAME = "username"
|
|
78
|
+
USER_REQUIRES_RECONSENT = "user_requires_reconsent"
|
|
79
|
+
UUID = "uuid"
|
|
80
|
+
|
|
81
|
+
def __str__(self) -> str:
|
|
82
|
+
return str(self.value)
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
from enum import Enum
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class ManagedRancherClusterResourcesRetrieveFieldItem(str, Enum):
|
|
5
|
+
ATTRIBUTES = "attributes"
|
|
6
|
+
AVAILABLE_ACTIONS = "available_actions"
|
|
7
|
+
BACKEND_ID = "backend_id"
|
|
8
|
+
BACKEND_METADATA = "backend_metadata"
|
|
9
|
+
CAN_TERMINATE = "can_terminate"
|
|
10
|
+
CATEGORY_ICON = "category_icon"
|
|
11
|
+
CATEGORY_TITLE = "category_title"
|
|
12
|
+
CATEGORY_UUID = "category_uuid"
|
|
13
|
+
CREATED = "created"
|
|
14
|
+
CREATION_ORDER = "creation_order"
|
|
15
|
+
CURRENT_USAGES = "current_usages"
|
|
16
|
+
CUSTOMER_NAME = "customer_name"
|
|
17
|
+
CUSTOMER_SLUG = "customer_slug"
|
|
18
|
+
CUSTOMER_UUID = "customer_uuid"
|
|
19
|
+
DESCRIPTION = "description"
|
|
20
|
+
DOWNSCALED = "downscaled"
|
|
21
|
+
EFFECTIVE_ID = "effective_id"
|
|
22
|
+
ENDPOINTS = "endpoints"
|
|
23
|
+
END_DATE = "end_date"
|
|
24
|
+
END_DATE_REQUESTED_BY = "end_date_requested_by"
|
|
25
|
+
ERROR_MESSAGE = "error_message"
|
|
26
|
+
ERROR_TRACEBACK = "error_traceback"
|
|
27
|
+
IS_LIMIT_BASED = "is_limit_based"
|
|
28
|
+
IS_USAGE_BASED = "is_usage_based"
|
|
29
|
+
LAST_SYNC = "last_sync"
|
|
30
|
+
LIMITS = "limits"
|
|
31
|
+
LIMIT_USAGE = "limit_usage"
|
|
32
|
+
MODIFIED = "modified"
|
|
33
|
+
NAME = "name"
|
|
34
|
+
OFFERING = "offering"
|
|
35
|
+
OFFERING_BILLABLE = "offering_billable"
|
|
36
|
+
OFFERING_CUSTOMER_UUID = "offering_customer_uuid"
|
|
37
|
+
OFFERING_DESCRIPTION = "offering_description"
|
|
38
|
+
OFFERING_IMAGE = "offering_image"
|
|
39
|
+
OFFERING_NAME = "offering_name"
|
|
40
|
+
OFFERING_PLUGIN_OPTIONS = "offering_plugin_options"
|
|
41
|
+
OFFERING_SHARED = "offering_shared"
|
|
42
|
+
OFFERING_SLUG = "offering_slug"
|
|
43
|
+
OFFERING_THUMBNAIL = "offering_thumbnail"
|
|
44
|
+
OFFERING_TYPE = "offering_type"
|
|
45
|
+
OFFERING_UUID = "offering_uuid"
|
|
46
|
+
OPTIONS = "options"
|
|
47
|
+
ORDER_IN_PROGRESS = "order_in_progress"
|
|
48
|
+
PARENT_NAME = "parent_name"
|
|
49
|
+
PARENT_OFFERING_NAME = "parent_offering_name"
|
|
50
|
+
PARENT_OFFERING_SLUG = "parent_offering_slug"
|
|
51
|
+
PARENT_OFFERING_UUID = "parent_offering_uuid"
|
|
52
|
+
PARENT_UUID = "parent_uuid"
|
|
53
|
+
PAUSED = "paused"
|
|
54
|
+
PLAN = "plan"
|
|
55
|
+
PLAN_DESCRIPTION = "plan_description"
|
|
56
|
+
PLAN_NAME = "plan_name"
|
|
57
|
+
PLAN_UNIT = "plan_unit"
|
|
58
|
+
PLAN_UUID = "plan_uuid"
|
|
59
|
+
PROJECT = "project"
|
|
60
|
+
PROJECT_DESCRIPTION = "project_description"
|
|
61
|
+
PROJECT_END_DATE = "project_end_date"
|
|
62
|
+
PROJECT_END_DATE_REQUESTED_BY = "project_end_date_requested_by"
|
|
63
|
+
PROJECT_NAME = "project_name"
|
|
64
|
+
PROJECT_SLUG = "project_slug"
|
|
65
|
+
PROJECT_UUID = "project_uuid"
|
|
66
|
+
PROVIDER_NAME = "provider_name"
|
|
67
|
+
PROVIDER_UUID = "provider_uuid"
|
|
68
|
+
REPORT = "report"
|
|
69
|
+
RESOURCE_TYPE = "resource_type"
|
|
70
|
+
RESOURCE_UUID = "resource_uuid"
|
|
71
|
+
RESTRICT_MEMBER_ACCESS = "restrict_member_access"
|
|
72
|
+
SCOPE = "scope"
|
|
73
|
+
SERVICE_SETTINGS_UUID = "service_settings_uuid"
|
|
74
|
+
SLUG = "slug"
|
|
75
|
+
STATE = "state"
|
|
76
|
+
URL = "url"
|
|
77
|
+
USERNAME = "username"
|
|
78
|
+
USER_REQUIRES_RECONSENT = "user_requires_reconsent"
|
|
79
|
+
UUID = "uuid"
|
|
80
|
+
|
|
81
|
+
def __str__(self) -> str:
|
|
82
|
+
return str(self.value)
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import TYPE_CHECKING, Any, TypeVar, Union, cast
|
|
3
|
+
|
|
4
|
+
from attrs import define as _attrs_define
|
|
5
|
+
from attrs import field as _attrs_field
|
|
6
|
+
|
|
7
|
+
from ..models.role_enum import RoleEnum
|
|
8
|
+
from ..types import UNSET, Unset
|
|
9
|
+
|
|
10
|
+
if TYPE_CHECKING:
|
|
11
|
+
from ..models.data_volume_request import DataVolumeRequest
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
T = TypeVar("T", bound="ManagedRancherCreateNodeRequest")
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
@_attrs_define
|
|
18
|
+
class ManagedRancherCreateNodeRequest:
|
|
19
|
+
"""
|
|
20
|
+
Attributes:
|
|
21
|
+
role (RoleEnum):
|
|
22
|
+
subnet (Union[None, str]):
|
|
23
|
+
system_volume_size (Union[Unset, int]):
|
|
24
|
+
system_volume_type (Union[None, Unset, str]):
|
|
25
|
+
memory (Union[Unset, int]):
|
|
26
|
+
cpu (Union[Unset, int]):
|
|
27
|
+
flavor (Union[None, Unset, str]):
|
|
28
|
+
data_volumes (Union[Unset, list['DataVolumeRequest']]):
|
|
29
|
+
ssh_public_key (Union[Unset, str]):
|
|
30
|
+
tenant (Union[Unset, str]):
|
|
31
|
+
"""
|
|
32
|
+
|
|
33
|
+
role: RoleEnum
|
|
34
|
+
subnet: Union[None, str]
|
|
35
|
+
system_volume_size: Union[Unset, int] = UNSET
|
|
36
|
+
system_volume_type: Union[None, Unset, str] = UNSET
|
|
37
|
+
memory: Union[Unset, int] = UNSET
|
|
38
|
+
cpu: Union[Unset, int] = UNSET
|
|
39
|
+
flavor: Union[None, Unset, str] = UNSET
|
|
40
|
+
data_volumes: Union[Unset, list["DataVolumeRequest"]] = UNSET
|
|
41
|
+
ssh_public_key: Union[Unset, str] = UNSET
|
|
42
|
+
tenant: Union[Unset, str] = UNSET
|
|
43
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
44
|
+
|
|
45
|
+
def to_dict(self) -> dict[str, Any]:
|
|
46
|
+
role = self.role.value
|
|
47
|
+
|
|
48
|
+
subnet: Union[None, str]
|
|
49
|
+
subnet = self.subnet
|
|
50
|
+
|
|
51
|
+
system_volume_size = self.system_volume_size
|
|
52
|
+
|
|
53
|
+
system_volume_type: Union[None, Unset, str]
|
|
54
|
+
if isinstance(self.system_volume_type, Unset):
|
|
55
|
+
system_volume_type = UNSET
|
|
56
|
+
else:
|
|
57
|
+
system_volume_type = self.system_volume_type
|
|
58
|
+
|
|
59
|
+
memory = self.memory
|
|
60
|
+
|
|
61
|
+
cpu = self.cpu
|
|
62
|
+
|
|
63
|
+
flavor: Union[None, Unset, str]
|
|
64
|
+
if isinstance(self.flavor, Unset):
|
|
65
|
+
flavor = UNSET
|
|
66
|
+
else:
|
|
67
|
+
flavor = self.flavor
|
|
68
|
+
|
|
69
|
+
data_volumes: Union[Unset, list[dict[str, Any]]] = UNSET
|
|
70
|
+
if not isinstance(self.data_volumes, Unset):
|
|
71
|
+
data_volumes = []
|
|
72
|
+
for data_volumes_item_data in self.data_volumes:
|
|
73
|
+
data_volumes_item = data_volumes_item_data.to_dict()
|
|
74
|
+
data_volumes.append(data_volumes_item)
|
|
75
|
+
|
|
76
|
+
ssh_public_key = self.ssh_public_key
|
|
77
|
+
|
|
78
|
+
tenant = self.tenant
|
|
79
|
+
|
|
80
|
+
field_dict: dict[str, Any] = {}
|
|
81
|
+
field_dict.update(self.additional_properties)
|
|
82
|
+
field_dict.update(
|
|
83
|
+
{
|
|
84
|
+
"role": role,
|
|
85
|
+
"subnet": subnet,
|
|
86
|
+
}
|
|
87
|
+
)
|
|
88
|
+
if system_volume_size is not UNSET:
|
|
89
|
+
field_dict["system_volume_size"] = system_volume_size
|
|
90
|
+
if system_volume_type is not UNSET:
|
|
91
|
+
field_dict["system_volume_type"] = system_volume_type
|
|
92
|
+
if memory is not UNSET:
|
|
93
|
+
field_dict["memory"] = memory
|
|
94
|
+
if cpu is not UNSET:
|
|
95
|
+
field_dict["cpu"] = cpu
|
|
96
|
+
if flavor is not UNSET:
|
|
97
|
+
field_dict["flavor"] = flavor
|
|
98
|
+
if data_volumes is not UNSET:
|
|
99
|
+
field_dict["data_volumes"] = data_volumes
|
|
100
|
+
if ssh_public_key is not UNSET:
|
|
101
|
+
field_dict["ssh_public_key"] = ssh_public_key
|
|
102
|
+
if tenant is not UNSET:
|
|
103
|
+
field_dict["tenant"] = tenant
|
|
104
|
+
|
|
105
|
+
return field_dict
|
|
106
|
+
|
|
107
|
+
@classmethod
|
|
108
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
109
|
+
from ..models.data_volume_request import DataVolumeRequest
|
|
110
|
+
|
|
111
|
+
d = dict(src_dict)
|
|
112
|
+
role = RoleEnum(d.pop("role"))
|
|
113
|
+
|
|
114
|
+
def _parse_subnet(data: object) -> Union[None, str]:
|
|
115
|
+
if data is None:
|
|
116
|
+
return data
|
|
117
|
+
return cast(Union[None, str], data)
|
|
118
|
+
|
|
119
|
+
subnet = _parse_subnet(d.pop("subnet"))
|
|
120
|
+
|
|
121
|
+
system_volume_size = d.pop("system_volume_size", UNSET)
|
|
122
|
+
|
|
123
|
+
def _parse_system_volume_type(data: object) -> Union[None, Unset, str]:
|
|
124
|
+
if data is None:
|
|
125
|
+
return data
|
|
126
|
+
if isinstance(data, Unset):
|
|
127
|
+
return data
|
|
128
|
+
return cast(Union[None, Unset, str], data)
|
|
129
|
+
|
|
130
|
+
system_volume_type = _parse_system_volume_type(d.pop("system_volume_type", UNSET))
|
|
131
|
+
|
|
132
|
+
memory = d.pop("memory", UNSET)
|
|
133
|
+
|
|
134
|
+
cpu = d.pop("cpu", UNSET)
|
|
135
|
+
|
|
136
|
+
def _parse_flavor(data: object) -> Union[None, Unset, str]:
|
|
137
|
+
if data is None:
|
|
138
|
+
return data
|
|
139
|
+
if isinstance(data, Unset):
|
|
140
|
+
return data
|
|
141
|
+
return cast(Union[None, Unset, str], data)
|
|
142
|
+
|
|
143
|
+
flavor = _parse_flavor(d.pop("flavor", UNSET))
|
|
144
|
+
|
|
145
|
+
data_volumes = []
|
|
146
|
+
_data_volumes = d.pop("data_volumes", UNSET)
|
|
147
|
+
for data_volumes_item_data in _data_volumes or []:
|
|
148
|
+
data_volumes_item = DataVolumeRequest.from_dict(data_volumes_item_data)
|
|
149
|
+
|
|
150
|
+
data_volumes.append(data_volumes_item)
|
|
151
|
+
|
|
152
|
+
ssh_public_key = d.pop("ssh_public_key", UNSET)
|
|
153
|
+
|
|
154
|
+
tenant = d.pop("tenant", UNSET)
|
|
155
|
+
|
|
156
|
+
managed_rancher_create_node_request = cls(
|
|
157
|
+
role=role,
|
|
158
|
+
subnet=subnet,
|
|
159
|
+
system_volume_size=system_volume_size,
|
|
160
|
+
system_volume_type=system_volume_type,
|
|
161
|
+
memory=memory,
|
|
162
|
+
cpu=cpu,
|
|
163
|
+
flavor=flavor,
|
|
164
|
+
data_volumes=data_volumes,
|
|
165
|
+
ssh_public_key=ssh_public_key,
|
|
166
|
+
tenant=tenant,
|
|
167
|
+
)
|
|
168
|
+
|
|
169
|
+
managed_rancher_create_node_request.additional_properties = d
|
|
170
|
+
return managed_rancher_create_node_request
|
|
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
|
|
@@ -16,6 +16,7 @@ class MarketplaceServiceProvidersProjectsListFieldItem(str, Enum):
|
|
|
16
16
|
END_DATE_REQUESTED_BY = "end_date_requested_by"
|
|
17
17
|
IMAGE = "image"
|
|
18
18
|
IS_INDUSTRY = "is_industry"
|
|
19
|
+
KIND = "kind"
|
|
19
20
|
MARKETPLACE_RESOURCE_COUNT = "marketplace_resource_count"
|
|
20
21
|
MAX_SERVICE_ACCOUNTS = "max_service_accounts"
|
|
21
22
|
NAME = "name"
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
from collections.abc import Mapping
|
|
2
|
+
from typing import Any, TypeVar, Union, cast
|
|
3
|
+
from uuid import UUID
|
|
4
|
+
|
|
5
|
+
from attrs import define as _attrs_define
|
|
6
|
+
from attrs import field as _attrs_field
|
|
7
|
+
|
|
8
|
+
from ..models.blank_enum import BlankEnum
|
|
9
|
+
from ..models.direction_enum import DirectionEnum
|
|
10
|
+
from ..models.ethertype_enum import EthertypeEnum
|
|
11
|
+
from ..models.protocol_enum import ProtocolEnum
|
|
12
|
+
from ..types import UNSET, Unset
|
|
13
|
+
|
|
14
|
+
T = TypeVar("T", bound="NestedSecurityGroupRule")
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
@_attrs_define
|
|
18
|
+
class NestedSecurityGroupRule:
|
|
19
|
+
"""
|
|
20
|
+
Attributes:
|
|
21
|
+
ethertype (Union[Unset, EthertypeEnum]):
|
|
22
|
+
direction (Union[Unset, DirectionEnum]):
|
|
23
|
+
protocol (Union[BlankEnum, ProtocolEnum, Unset]): The network protocol (TCP, UDP, ICMP, or empty for any
|
|
24
|
+
protocol)
|
|
25
|
+
from_port (Union[None, Unset, int]): Starting port number in the range (1-65535)
|
|
26
|
+
to_port (Union[None, Unset, int]): Ending port number in the range (1-65535)
|
|
27
|
+
cidr (Union[None, Unset, str]): CIDR notation for the source/destination network address range
|
|
28
|
+
description (Union[Unset, str]):
|
|
29
|
+
remote_group_name (Union[Unset, str]):
|
|
30
|
+
remote_group_uuid (Union[Unset, UUID]):
|
|
31
|
+
id (Union[Unset, int]):
|
|
32
|
+
"""
|
|
33
|
+
|
|
34
|
+
ethertype: Union[Unset, EthertypeEnum] = UNSET
|
|
35
|
+
direction: Union[Unset, DirectionEnum] = UNSET
|
|
36
|
+
protocol: Union[BlankEnum, ProtocolEnum, Unset] = UNSET
|
|
37
|
+
from_port: Union[None, Unset, int] = UNSET
|
|
38
|
+
to_port: Union[None, Unset, int] = UNSET
|
|
39
|
+
cidr: Union[None, Unset, str] = UNSET
|
|
40
|
+
description: Union[Unset, str] = UNSET
|
|
41
|
+
remote_group_name: Union[Unset, str] = UNSET
|
|
42
|
+
remote_group_uuid: Union[Unset, UUID] = UNSET
|
|
43
|
+
id: Union[Unset, int] = UNSET
|
|
44
|
+
additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
|
|
45
|
+
|
|
46
|
+
def to_dict(self) -> dict[str, Any]:
|
|
47
|
+
ethertype: Union[Unset, str] = UNSET
|
|
48
|
+
if not isinstance(self.ethertype, Unset):
|
|
49
|
+
ethertype = self.ethertype.value
|
|
50
|
+
|
|
51
|
+
direction: Union[Unset, str] = UNSET
|
|
52
|
+
if not isinstance(self.direction, Unset):
|
|
53
|
+
direction = self.direction.value
|
|
54
|
+
|
|
55
|
+
protocol: Union[Unset, str]
|
|
56
|
+
if isinstance(self.protocol, Unset):
|
|
57
|
+
protocol = UNSET
|
|
58
|
+
elif isinstance(self.protocol, ProtocolEnum):
|
|
59
|
+
protocol = self.protocol.value
|
|
60
|
+
else:
|
|
61
|
+
protocol = self.protocol.value
|
|
62
|
+
|
|
63
|
+
from_port: Union[None, Unset, int]
|
|
64
|
+
if isinstance(self.from_port, Unset):
|
|
65
|
+
from_port = UNSET
|
|
66
|
+
else:
|
|
67
|
+
from_port = self.from_port
|
|
68
|
+
|
|
69
|
+
to_port: Union[None, Unset, int]
|
|
70
|
+
if isinstance(self.to_port, Unset):
|
|
71
|
+
to_port = UNSET
|
|
72
|
+
else:
|
|
73
|
+
to_port = self.to_port
|
|
74
|
+
|
|
75
|
+
cidr: Union[None, Unset, str]
|
|
76
|
+
if isinstance(self.cidr, Unset):
|
|
77
|
+
cidr = UNSET
|
|
78
|
+
else:
|
|
79
|
+
cidr = self.cidr
|
|
80
|
+
|
|
81
|
+
description = self.description
|
|
82
|
+
|
|
83
|
+
remote_group_name = self.remote_group_name
|
|
84
|
+
|
|
85
|
+
remote_group_uuid: Union[Unset, str] = UNSET
|
|
86
|
+
if not isinstance(self.remote_group_uuid, Unset):
|
|
87
|
+
remote_group_uuid = str(self.remote_group_uuid)
|
|
88
|
+
|
|
89
|
+
id = self.id
|
|
90
|
+
|
|
91
|
+
field_dict: dict[str, Any] = {}
|
|
92
|
+
field_dict.update(self.additional_properties)
|
|
93
|
+
field_dict.update({})
|
|
94
|
+
if ethertype is not UNSET:
|
|
95
|
+
field_dict["ethertype"] = ethertype
|
|
96
|
+
if direction is not UNSET:
|
|
97
|
+
field_dict["direction"] = direction
|
|
98
|
+
if protocol is not UNSET:
|
|
99
|
+
field_dict["protocol"] = protocol
|
|
100
|
+
if from_port is not UNSET:
|
|
101
|
+
field_dict["from_port"] = from_port
|
|
102
|
+
if to_port is not UNSET:
|
|
103
|
+
field_dict["to_port"] = to_port
|
|
104
|
+
if cidr is not UNSET:
|
|
105
|
+
field_dict["cidr"] = cidr
|
|
106
|
+
if description is not UNSET:
|
|
107
|
+
field_dict["description"] = description
|
|
108
|
+
if remote_group_name is not UNSET:
|
|
109
|
+
field_dict["remote_group_name"] = remote_group_name
|
|
110
|
+
if remote_group_uuid is not UNSET:
|
|
111
|
+
field_dict["remote_group_uuid"] = remote_group_uuid
|
|
112
|
+
if id is not UNSET:
|
|
113
|
+
field_dict["id"] = id
|
|
114
|
+
|
|
115
|
+
return field_dict
|
|
116
|
+
|
|
117
|
+
@classmethod
|
|
118
|
+
def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
|
|
119
|
+
d = dict(src_dict)
|
|
120
|
+
_ethertype = d.pop("ethertype", UNSET)
|
|
121
|
+
ethertype: Union[Unset, EthertypeEnum]
|
|
122
|
+
if isinstance(_ethertype, Unset):
|
|
123
|
+
ethertype = UNSET
|
|
124
|
+
else:
|
|
125
|
+
ethertype = EthertypeEnum(_ethertype)
|
|
126
|
+
|
|
127
|
+
_direction = d.pop("direction", UNSET)
|
|
128
|
+
direction: Union[Unset, DirectionEnum]
|
|
129
|
+
if isinstance(_direction, Unset):
|
|
130
|
+
direction = UNSET
|
|
131
|
+
else:
|
|
132
|
+
direction = DirectionEnum(_direction)
|
|
133
|
+
|
|
134
|
+
def _parse_protocol(data: object) -> Union[BlankEnum, ProtocolEnum, Unset]:
|
|
135
|
+
if isinstance(data, Unset):
|
|
136
|
+
return data
|
|
137
|
+
try:
|
|
138
|
+
if not isinstance(data, str):
|
|
139
|
+
raise TypeError()
|
|
140
|
+
protocol_type_0 = ProtocolEnum(data)
|
|
141
|
+
|
|
142
|
+
return protocol_type_0
|
|
143
|
+
except: # noqa: E722
|
|
144
|
+
pass
|
|
145
|
+
if not isinstance(data, str):
|
|
146
|
+
raise TypeError()
|
|
147
|
+
protocol_type_1 = BlankEnum(data)
|
|
148
|
+
|
|
149
|
+
return protocol_type_1
|
|
150
|
+
|
|
151
|
+
protocol = _parse_protocol(d.pop("protocol", UNSET))
|
|
152
|
+
|
|
153
|
+
def _parse_from_port(data: object) -> Union[None, Unset, int]:
|
|
154
|
+
if data is None:
|
|
155
|
+
return data
|
|
156
|
+
if isinstance(data, Unset):
|
|
157
|
+
return data
|
|
158
|
+
return cast(Union[None, Unset, int], data)
|
|
159
|
+
|
|
160
|
+
from_port = _parse_from_port(d.pop("from_port", UNSET))
|
|
161
|
+
|
|
162
|
+
def _parse_to_port(data: object) -> Union[None, Unset, int]:
|
|
163
|
+
if data is None:
|
|
164
|
+
return data
|
|
165
|
+
if isinstance(data, Unset):
|
|
166
|
+
return data
|
|
167
|
+
return cast(Union[None, Unset, int], data)
|
|
168
|
+
|
|
169
|
+
to_port = _parse_to_port(d.pop("to_port", UNSET))
|
|
170
|
+
|
|
171
|
+
def _parse_cidr(data: object) -> Union[None, Unset, str]:
|
|
172
|
+
if data is None:
|
|
173
|
+
return data
|
|
174
|
+
if isinstance(data, Unset):
|
|
175
|
+
return data
|
|
176
|
+
return cast(Union[None, Unset, str], data)
|
|
177
|
+
|
|
178
|
+
cidr = _parse_cidr(d.pop("cidr", UNSET))
|
|
179
|
+
|
|
180
|
+
description = d.pop("description", UNSET)
|
|
181
|
+
|
|
182
|
+
remote_group_name = d.pop("remote_group_name", UNSET)
|
|
183
|
+
|
|
184
|
+
_remote_group_uuid = d.pop("remote_group_uuid", UNSET)
|
|
185
|
+
remote_group_uuid: Union[Unset, UUID]
|
|
186
|
+
if isinstance(_remote_group_uuid, Unset):
|
|
187
|
+
remote_group_uuid = UNSET
|
|
188
|
+
else:
|
|
189
|
+
remote_group_uuid = UUID(_remote_group_uuid)
|
|
190
|
+
|
|
191
|
+
id = d.pop("id", UNSET)
|
|
192
|
+
|
|
193
|
+
nested_security_group_rule = cls(
|
|
194
|
+
ethertype=ethertype,
|
|
195
|
+
direction=direction,
|
|
196
|
+
protocol=protocol,
|
|
197
|
+
from_port=from_port,
|
|
198
|
+
to_port=to_port,
|
|
199
|
+
cidr=cidr,
|
|
200
|
+
description=description,
|
|
201
|
+
remote_group_name=remote_group_name,
|
|
202
|
+
remote_group_uuid=remote_group_uuid,
|
|
203
|
+
id=id,
|
|
204
|
+
)
|
|
205
|
+
|
|
206
|
+
nested_security_group_rule.additional_properties = d
|
|
207
|
+
return nested_security_group_rule
|
|
208
|
+
|
|
209
|
+
@property
|
|
210
|
+
def additional_keys(self) -> list[str]:
|
|
211
|
+
return list(self.additional_properties.keys())
|
|
212
|
+
|
|
213
|
+
def __getitem__(self, key: str) -> Any:
|
|
214
|
+
return self.additional_properties[key]
|
|
215
|
+
|
|
216
|
+
def __setitem__(self, key: str, value: Any) -> None:
|
|
217
|
+
self.additional_properties[key] = value
|
|
218
|
+
|
|
219
|
+
def __delitem__(self, key: str) -> None:
|
|
220
|
+
del self.additional_properties[key]
|
|
221
|
+
|
|
222
|
+
def __contains__(self, key: str) -> bool:
|
|
223
|
+
return key in self.additional_properties
|