waldur-api-client 7.7.9__py3-none-any.whl → 7.8.1__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 (108) hide show
  1. waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_count.py +96 -0
  2. waldur_api_client/api/marketplace_course_accounts/marketplace_course_accounts_list.py +96 -0
  3. waldur_api_client/api/marketplace_offering_user_checklist_completions/__init__.py +1 -0
  4. waldur_api_client/api/marketplace_offering_user_checklist_completions/marketplace_offering_user_checklist_completions_count.py +286 -0
  5. waldur_api_client/api/marketplace_offering_user_checklist_completions/marketplace_offering_user_checklist_completions_list.py +289 -0
  6. waldur_api_client/api/{rancher_clusters/rancher_clusters_create.py → marketplace_offering_user_checklist_completions/marketplace_offering_user_checklist_completions_retrieve.py} +29 -38
  7. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_count.py +15 -0
  8. waldur_api_client/api/marketplace_offering_users/marketplace_offering_users_list.py +15 -0
  9. waldur_api_client/api/{rancher_clusters/rancher_clusters_destroy.py → marketplace_orders/marketplace_orders_delete_attachment.py} +6 -4
  10. waldur_api_client/api/marketplace_orders/marketplace_orders_update_attachment.py +168 -0
  11. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_component_stats_list.py +15 -0
  12. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_costs_list.py +15 -0
  13. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_count.py +15 -0
  14. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_customers_list.py +15 -0
  15. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_groups_count.py +15 -0
  16. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_groups_list.py +15 -0
  17. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_list.py +15 -0
  18. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_list_course_accounts_retrieve.py +177 -0
  19. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_refresh_offering_usernames.py +0 -22
  20. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_update_compliance_checklist.py +105 -0
  21. waldur_api_client/api/marketplace_public_offerings/marketplace_public_offerings_count.py +15 -0
  22. waldur_api_client/api/marketplace_public_offerings/marketplace_public_offerings_list.py +15 -0
  23. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_course_accounts_list.py +98 -0
  24. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_offerings_list.py +15 -0
  25. waldur_api_client/api/user_invitations/user_invitations_count.py +15 -0
  26. waldur_api_client/api/user_invitations/user_invitations_list.py +15 -0
  27. waldur_api_client/models/__init__.py +34 -6
  28. waldur_api_client/models/booking_offerings_list_field_item.py +1 -0
  29. waldur_api_client/models/booking_offerings_retrieve_field_item.py +1 -0
  30. waldur_api_client/models/booking_resource.py +18 -0
  31. waldur_api_client/models/booking_resources_list_field_item.py +2 -0
  32. waldur_api_client/models/booking_resources_retrieve_field_item.py +2 -0
  33. waldur_api_client/models/country_enum.py +211 -0
  34. waldur_api_client/models/course_account.py +24 -0
  35. waldur_api_client/models/customer_request.py +9 -0
  36. waldur_api_client/models/deployment_mode_enum.py +9 -0
  37. waldur_api_client/models/group_invitation.py +8 -0
  38. waldur_api_client/models/identity_provider.py +57 -0
  39. waldur_api_client/models/identity_provider_request.py +57 -0
  40. waldur_api_client/models/invitation.py +8 -0
  41. waldur_api_client/models/issue.py +8 -17
  42. waldur_api_client/models/issue_request.py +8 -17
  43. waldur_api_client/models/issue_type_enum.py +4 -4
  44. waldur_api_client/models/managed_rancher_cluster_resources_list_field_item.py +2 -0
  45. waldur_api_client/models/managed_rancher_cluster_resources_retrieve_field_item.py +2 -0
  46. waldur_api_client/models/marketplace_course_accounts_count_o_item.py +23 -0
  47. waldur_api_client/models/marketplace_course_accounts_list_o_item.py +23 -0
  48. waldur_api_client/models/marketplace_offering_user_checklist_completions_count_o_item.py +11 -0
  49. waldur_api_client/models/marketplace_offering_user_checklist_completions_list_o_item.py +11 -0
  50. waldur_api_client/models/marketplace_offering_users_list_field_item.py +2 -0
  51. waldur_api_client/models/marketplace_offering_users_retrieve_field_item.py +2 -0
  52. waldur_api_client/models/marketplace_orders_list_field_item.py +5 -0
  53. waldur_api_client/models/marketplace_orders_retrieve_field_item.py +5 -0
  54. waldur_api_client/models/marketplace_provider_offerings_list_course_accounts_retrieve_field_item.py +72 -0
  55. waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +2 -0
  56. waldur_api_client/models/marketplace_provider_resources_list_field_item.py +2 -0
  57. waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +2 -0
  58. waldur_api_client/models/marketplace_public_offerings_list_field_item.py +1 -0
  59. waldur_api_client/models/marketplace_public_offerings_retrieve_field_item.py +1 -0
  60. waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +2 -0
  61. waldur_api_client/models/marketplace_resources_list_field_item.py +2 -0
  62. waldur_api_client/models/marketplace_resources_retrieve_field_item.py +2 -0
  63. waldur_api_client/models/marketplace_service_providers_course_accounts_list_o_item.py +23 -0
  64. waldur_api_client/models/merged_plugin_options.py +36 -0
  65. waldur_api_client/models/merged_plugin_options_request.py +36 -0
  66. waldur_api_client/models/notification.py +11 -0
  67. waldur_api_client/models/notification_context_fields.py +47 -0
  68. waldur_api_client/models/offering.py +9 -0
  69. waldur_api_client/models/offering_compliance_checklist_update_request.py +82 -0
  70. waldur_api_client/models/offering_create.py +9 -8
  71. waldur_api_client/models/offering_create_request.py +9 -0
  72. waldur_api_client/models/offering_overview_update_request.py +9 -0
  73. waldur_api_client/models/offering_terms_of_service.py +42 -1
  74. waldur_api_client/models/offering_user.py +18 -0
  75. waldur_api_client/models/open_stack_tenant_create_order_attributes.py +0 -18
  76. waldur_api_client/models/open_stack_tenant_request.py +18 -0
  77. waldur_api_client/models/order_attachment.py +71 -0
  78. waldur_api_client/models/order_attachment_request.py +84 -0
  79. waldur_api_client/models/order_create.py +58 -16
  80. waldur_api_client/models/order_create_request.py +44 -62
  81. waldur_api_client/models/order_details.py +99 -16
  82. waldur_api_client/models/patched_customer_request.py +9 -0
  83. waldur_api_client/models/patched_identity_provider_request.py +58 -0
  84. waldur_api_client/models/patched_project_request.py +9 -0
  85. waldur_api_client/models/patched_protected_call_request.py +9 -0
  86. waldur_api_client/models/patched_protected_round_request.py +2 -2
  87. waldur_api_client/models/patched_service_provider_request.py +9 -0
  88. waldur_api_client/models/patched_user_request.py +9 -0
  89. waldur_api_client/models/project_request.py +9 -0
  90. waldur_api_client/models/protected_call_request.py +9 -0
  91. waldur_api_client/models/protected_round.py +2 -2
  92. waldur_api_client/models/protected_round_request.py +2 -2
  93. waldur_api_client/models/public_offering_details.py +9 -0
  94. waldur_api_client/models/rancher_cluster_request.py +1 -48
  95. waldur_api_client/models/resource.py +18 -0
  96. waldur_api_client/models/resource_update_limits_request.py +23 -1
  97. waldur_api_client/models/service_provider_request.py +9 -0
  98. waldur_api_client/models/user_checklist_completion.py +265 -0
  99. waldur_api_client/models/user_consent_info.py +86 -0
  100. waldur_api_client/models/user_request.py +9 -0
  101. waldur_api_client/models/visible_invitation_details.py +8 -0
  102. {waldur_api_client-7.7.9.dist-info → waldur_api_client-7.8.1.dist-info}/METADATA +4 -2
  103. {waldur_api_client-7.7.9.dist-info → waldur_api_client-7.8.1.dist-info}/RECORD +105 -89
  104. {waldur_api_client-7.7.9.dist-info → waldur_api_client-7.8.1.dist-info}/WHEEL +1 -1
  105. waldur_api_client/models/marketplace_managed_rancher_create_order_attributes.py +0 -144
  106. waldur_api_client/models/marketplace_rancher_create_order_attributes.py +0 -145
  107. waldur_api_client/models/provider_offering_details_request.py +0 -398
  108. {waldur_api_client-7.7.9.dist-info → waldur_api_client-7.8.1.dist-info/licenses}/LICENSE +0 -0
@@ -27,6 +27,7 @@ class GroupInvitation:
27
27
  role_description (str):
28
28
  created_by_full_name (str):
29
29
  created_by_username (str):
30
+ created_by_image (str):
30
31
  url (str):
31
32
  uuid (UUID):
32
33
  role (UUID):
@@ -55,6 +56,7 @@ class GroupInvitation:
55
56
  role_description: str
56
57
  created_by_full_name: str
57
58
  created_by_username: str
59
+ created_by_image: str
58
60
  url: str
59
61
  uuid: UUID
60
62
  role: UUID
@@ -92,6 +94,8 @@ class GroupInvitation:
92
94
 
93
95
  created_by_username = self.created_by_username
94
96
 
97
+ created_by_image = self.created_by_image
98
+
95
99
  url = self.url
96
100
 
97
101
  uuid = str(self.uuid)
@@ -143,6 +147,7 @@ class GroupInvitation:
143
147
  "role_description": role_description,
144
148
  "created_by_full_name": created_by_full_name,
145
149
  "created_by_username": created_by_username,
150
+ "created_by_image": created_by_image,
146
151
  "url": url,
147
152
  "uuid": uuid,
148
153
  "role": role,
@@ -195,6 +200,8 @@ class GroupInvitation:
195
200
 
196
201
  created_by_username = d.pop("created_by_username")
197
202
 
203
+ created_by_image = d.pop("created_by_image")
204
+
198
205
  url = d.pop("url")
199
206
 
200
207
  uuid = UUID(d.pop("uuid"))
@@ -259,6 +266,7 @@ class GroupInvitation:
259
266
  role_description=role_description,
260
267
  created_by_full_name=created_by_full_name,
261
268
  created_by_username=created_by_username,
269
+ created_by_image=created_by_image,
262
270
  url=url,
263
271
  uuid=uuid,
264
272
  role=role,
@@ -15,6 +15,7 @@ class IdentityProvider:
15
15
  Attributes:
16
16
  provider (str):
17
17
  client_id (str): ID of application used for OAuth authentication.
18
+ client_secret (str): Application secret key.
18
19
  discovery_url (str): The endpoint for endpoint discovery.
19
20
  userinfo_url (str): The endpoint for fetching user info.
20
21
  token_url (str): The endpoint for obtaining auth token.
@@ -28,10 +29,17 @@ class IdentityProvider:
28
29
  management_url (Union[Unset, str]): The endpoint for user details management.
29
30
  protected_fields (Union[Unset, Any]):
30
31
  extra_scope (Union[None, Unset, str]): Space-separated list of scopes to request during authentication.
32
+ user_field (Union[Unset, str]): The field in Waldur User model to be used for looking up the user
33
+ user_claim (Union[Unset, str]): The OIDC claim from the userinfo endpoint to be used as the value for the lookup
34
+ field.
35
+ attribute_mapping (Union[Unset, Any]): A JSON object mapping Waldur User model fields to OIDC claims. Example:
36
+ {"first_name": "given_name", "last_name": "family_name", "email": "email"}
37
+ extra_fields (Union[None, Unset, str]): Space-separated list of extra fields to persist.
31
38
  """
32
39
 
33
40
  provider: str
34
41
  client_id: str
42
+ client_secret: str
35
43
  discovery_url: str
36
44
  userinfo_url: str
37
45
  token_url: str
@@ -45,6 +53,10 @@ class IdentityProvider:
45
53
  management_url: Union[Unset, str] = UNSET
46
54
  protected_fields: Union[Unset, Any] = UNSET
47
55
  extra_scope: Union[None, Unset, str] = UNSET
56
+ user_field: Union[Unset, str] = UNSET
57
+ user_claim: Union[Unset, str] = UNSET
58
+ attribute_mapping: Union[Unset, Any] = UNSET
59
+ extra_fields: Union[None, Unset, str] = UNSET
48
60
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
49
61
 
50
62
  def to_dict(self) -> dict[str, Any]:
@@ -52,6 +64,8 @@ class IdentityProvider:
52
64
 
53
65
  client_id = self.client_id
54
66
 
67
+ client_secret = self.client_secret
68
+
55
69
  discovery_url = self.discovery_url
56
70
 
57
71
  userinfo_url = self.userinfo_url
@@ -82,12 +96,25 @@ class IdentityProvider:
82
96
  else:
83
97
  extra_scope = self.extra_scope
84
98
 
99
+ user_field = self.user_field
100
+
101
+ user_claim = self.user_claim
102
+
103
+ attribute_mapping = self.attribute_mapping
104
+
105
+ extra_fields: Union[None, Unset, str]
106
+ if isinstance(self.extra_fields, Unset):
107
+ extra_fields = UNSET
108
+ else:
109
+ extra_fields = self.extra_fields
110
+
85
111
  field_dict: dict[str, Any] = {}
86
112
  field_dict.update(self.additional_properties)
87
113
  field_dict.update(
88
114
  {
89
115
  "provider": provider,
90
116
  "client_id": client_id,
117
+ "client_secret": client_secret,
91
118
  "discovery_url": discovery_url,
92
119
  "userinfo_url": userinfo_url,
93
120
  "token_url": token_url,
@@ -110,6 +137,14 @@ class IdentityProvider:
110
137
  field_dict["protected_fields"] = protected_fields
111
138
  if extra_scope is not UNSET:
112
139
  field_dict["extra_scope"] = extra_scope
140
+ if user_field is not UNSET:
141
+ field_dict["user_field"] = user_field
142
+ if user_claim is not UNSET:
143
+ field_dict["user_claim"] = user_claim
144
+ if attribute_mapping is not UNSET:
145
+ field_dict["attribute_mapping"] = attribute_mapping
146
+ if extra_fields is not UNSET:
147
+ field_dict["extra_fields"] = extra_fields
113
148
 
114
149
  return field_dict
115
150
 
@@ -120,6 +155,8 @@ class IdentityProvider:
120
155
 
121
156
  client_id = d.pop("client_id")
122
157
 
158
+ client_secret = d.pop("client_secret")
159
+
123
160
  discovery_url = d.pop("discovery_url")
124
161
 
125
162
  userinfo_url = d.pop("userinfo_url")
@@ -153,9 +190,25 @@ class IdentityProvider:
153
190
 
154
191
  extra_scope = _parse_extra_scope(d.pop("extra_scope", UNSET))
155
192
 
193
+ user_field = d.pop("user_field", UNSET)
194
+
195
+ user_claim = d.pop("user_claim", UNSET)
196
+
197
+ attribute_mapping = d.pop("attribute_mapping", UNSET)
198
+
199
+ def _parse_extra_fields(data: object) -> Union[None, Unset, str]:
200
+ if data is None:
201
+ return data
202
+ if isinstance(data, Unset):
203
+ return data
204
+ return cast(Union[None, Unset, str], data)
205
+
206
+ extra_fields = _parse_extra_fields(d.pop("extra_fields", UNSET))
207
+
156
208
  identity_provider = cls(
157
209
  provider=provider,
158
210
  client_id=client_id,
211
+ client_secret=client_secret,
159
212
  discovery_url=discovery_url,
160
213
  userinfo_url=userinfo_url,
161
214
  token_url=token_url,
@@ -169,6 +222,10 @@ class IdentityProvider:
169
222
  management_url=management_url,
170
223
  protected_fields=protected_fields,
171
224
  extra_scope=extra_scope,
225
+ user_field=user_field,
226
+ user_claim=user_claim,
227
+ attribute_mapping=attribute_mapping,
228
+ extra_fields=extra_fields,
172
229
  )
173
230
 
174
231
  identity_provider.additional_properties = d
@@ -15,6 +15,7 @@ class IdentityProviderRequest:
15
15
  Attributes:
16
16
  provider (str):
17
17
  client_id (str): ID of application used for OAuth authentication.
18
+ client_secret (str): Application secret key.
18
19
  discovery_url (str): The endpoint for endpoint discovery.
19
20
  label (str): Human-readable identity provider is label.
20
21
  is_active (Union[Unset, bool]):
@@ -24,10 +25,17 @@ class IdentityProviderRequest:
24
25
  management_url (Union[Unset, str]): The endpoint for user details management.
25
26
  protected_fields (Union[Unset, Any]):
26
27
  extra_scope (Union[None, Unset, str]): Space-separated list of scopes to request during authentication.
28
+ user_field (Union[Unset, str]): The field in Waldur User model to be used for looking up the user
29
+ user_claim (Union[Unset, str]): The OIDC claim from the userinfo endpoint to be used as the value for the lookup
30
+ field.
31
+ attribute_mapping (Union[Unset, Any]): A JSON object mapping Waldur User model fields to OIDC claims. Example:
32
+ {"first_name": "given_name", "last_name": "family_name", "email": "email"}
33
+ extra_fields (Union[None, Unset, str]): Space-separated list of extra fields to persist.
27
34
  """
28
35
 
29
36
  provider: str
30
37
  client_id: str
38
+ client_secret: str
31
39
  discovery_url: str
32
40
  label: str
33
41
  is_active: Union[Unset, bool] = UNSET
@@ -37,6 +45,10 @@ class IdentityProviderRequest:
37
45
  management_url: Union[Unset, str] = UNSET
38
46
  protected_fields: Union[Unset, Any] = UNSET
39
47
  extra_scope: Union[None, Unset, str] = UNSET
48
+ user_field: Union[Unset, str] = UNSET
49
+ user_claim: Union[Unset, str] = UNSET
50
+ attribute_mapping: Union[Unset, Any] = UNSET
51
+ extra_fields: Union[None, Unset, str] = UNSET
40
52
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
41
53
 
42
54
  def to_dict(self) -> dict[str, Any]:
@@ -44,6 +56,8 @@ class IdentityProviderRequest:
44
56
 
45
57
  client_id = self.client_id
46
58
 
59
+ client_secret = self.client_secret
60
+
47
61
  discovery_url = self.discovery_url
48
62
 
49
63
  label = self.label
@@ -66,12 +80,25 @@ class IdentityProviderRequest:
66
80
  else:
67
81
  extra_scope = self.extra_scope
68
82
 
83
+ user_field = self.user_field
84
+
85
+ user_claim = self.user_claim
86
+
87
+ attribute_mapping = self.attribute_mapping
88
+
89
+ extra_fields: Union[None, Unset, str]
90
+ if isinstance(self.extra_fields, Unset):
91
+ extra_fields = UNSET
92
+ else:
93
+ extra_fields = self.extra_fields
94
+
69
95
  field_dict: dict[str, Any] = {}
70
96
  field_dict.update(self.additional_properties)
71
97
  field_dict.update(
72
98
  {
73
99
  "provider": provider,
74
100
  "client_id": client_id,
101
+ "client_secret": client_secret,
75
102
  "discovery_url": discovery_url,
76
103
  "label": label,
77
104
  }
@@ -90,6 +117,14 @@ class IdentityProviderRequest:
90
117
  field_dict["protected_fields"] = protected_fields
91
118
  if extra_scope is not UNSET:
92
119
  field_dict["extra_scope"] = extra_scope
120
+ if user_field is not UNSET:
121
+ field_dict["user_field"] = user_field
122
+ if user_claim is not UNSET:
123
+ field_dict["user_claim"] = user_claim
124
+ if attribute_mapping is not UNSET:
125
+ field_dict["attribute_mapping"] = attribute_mapping
126
+ if extra_fields is not UNSET:
127
+ field_dict["extra_fields"] = extra_fields
93
128
 
94
129
  return field_dict
95
130
 
@@ -100,6 +135,8 @@ class IdentityProviderRequest:
100
135
 
101
136
  client_id = d.pop("client_id")
102
137
 
138
+ client_secret = d.pop("client_secret")
139
+
103
140
  discovery_url = d.pop("discovery_url")
104
141
 
105
142
  label = d.pop("label")
@@ -125,9 +162,25 @@ class IdentityProviderRequest:
125
162
 
126
163
  extra_scope = _parse_extra_scope(d.pop("extra_scope", UNSET))
127
164
 
165
+ user_field = d.pop("user_field", UNSET)
166
+
167
+ user_claim = d.pop("user_claim", UNSET)
168
+
169
+ attribute_mapping = d.pop("attribute_mapping", UNSET)
170
+
171
+ def _parse_extra_fields(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
+ extra_fields = _parse_extra_fields(d.pop("extra_fields", UNSET))
179
+
128
180
  identity_provider_request = cls(
129
181
  provider=provider,
130
182
  client_id=client_id,
183
+ client_secret=client_secret,
131
184
  discovery_url=discovery_url,
132
185
  label=label,
133
186
  is_active=is_active,
@@ -137,6 +190,10 @@ class IdentityProviderRequest:
137
190
  management_url=management_url,
138
191
  protected_fields=protected_fields,
139
192
  extra_scope=extra_scope,
193
+ user_field=user_field,
194
+ user_claim=user_claim,
195
+ attribute_mapping=attribute_mapping,
196
+ extra_fields=extra_fields,
140
197
  )
141
198
 
142
199
  identity_provider_request.additional_properties = d
@@ -29,6 +29,7 @@ class Invitation:
29
29
  role_description (str):
30
30
  created_by_full_name (str):
31
31
  created_by_username (str):
32
+ created_by_image (str):
32
33
  url (str):
33
34
  uuid (UUID):
34
35
  role (UUID):
@@ -59,6 +60,7 @@ class Invitation:
59
60
  role_description: str
60
61
  created_by_full_name: str
61
62
  created_by_username: str
63
+ created_by_image: str
62
64
  url: str
63
65
  uuid: UUID
64
66
  role: UUID
@@ -99,6 +101,8 @@ class Invitation:
99
101
 
100
102
  created_by_username = self.created_by_username
101
103
 
104
+ created_by_image = self.created_by_image
105
+
102
106
  url = self.url
103
107
 
104
108
  uuid = str(self.uuid)
@@ -145,6 +149,7 @@ class Invitation:
145
149
  "role_description": role_description,
146
150
  "created_by_full_name": created_by_full_name,
147
151
  "created_by_username": created_by_username,
152
+ "created_by_image": created_by_image,
148
153
  "url": url,
149
154
  "uuid": uuid,
150
155
  "role": role,
@@ -201,6 +206,8 @@ class Invitation:
201
206
 
202
207
  created_by_username = d.pop("created_by_username")
203
208
 
209
+ created_by_image = d.pop("created_by_image")
210
+
204
211
  url = d.pop("url")
205
212
 
206
213
  uuid = UUID(d.pop("uuid"))
@@ -244,6 +251,7 @@ class Invitation:
244
251
  role_description=role_description,
245
252
  created_by_full_name=created_by_full_name,
246
253
  created_by_username=created_by_username,
254
+ created_by_image=created_by_image,
247
255
  url=url,
248
256
  uuid=uuid,
249
257
  role=role,
@@ -7,7 +7,6 @@ from attrs import define as _attrs_define
7
7
  from attrs import field as _attrs_field
8
8
  from dateutil.parser import isoparse
9
9
 
10
- from ..models.issue_type_enum import IssueTypeEnum
11
10
  from ..types import UNSET, Unset
12
11
 
13
12
  if TYPE_CHECKING:
@@ -23,6 +22,7 @@ class Issue:
23
22
  Attributes:
24
23
  url (str):
25
24
  uuid (UUID):
25
+ type_ (str):
26
26
  key (str):
27
27
  backend_id (Union[None, str]):
28
28
  backend_name (Union[None, str]):
@@ -52,7 +52,6 @@ class Issue:
52
52
  destroy_is_available (bool):
53
53
  add_comment_is_available (bool):
54
54
  add_attachment_is_available (bool):
55
- type_ (Union[Unset, IssueTypeEnum]): Default: IssueTypeEnum.INFORMATIONAL.
56
55
  remote_id (Union[None, Unset, str]):
57
56
  description (Union[Unset, str]):
58
57
  priority (Union[Unset, str]):
@@ -66,6 +65,7 @@ class Issue:
66
65
 
67
66
  url: str
68
67
  uuid: UUID
68
+ type_: str
69
69
  key: str
70
70
  backend_id: Union[None, str]
71
71
  backend_name: Union[None, str]
@@ -95,7 +95,6 @@ class Issue:
95
95
  destroy_is_available: bool
96
96
  add_comment_is_available: bool
97
97
  add_attachment_is_available: bool
98
- type_: Union[Unset, IssueTypeEnum] = IssueTypeEnum.INFORMATIONAL
99
98
  remote_id: Union[None, Unset, str] = UNSET
100
99
  description: Union[Unset, str] = UNSET
101
100
  priority: Union[Unset, str] = UNSET
@@ -114,6 +113,8 @@ class Issue:
114
113
 
115
114
  uuid = str(self.uuid)
116
115
 
116
+ type_ = self.type_
117
+
117
118
  key = self.key
118
119
 
119
120
  backend_id: Union[None, str]
@@ -208,10 +209,6 @@ class Issue:
208
209
 
209
210
  add_attachment_is_available = self.add_attachment_is_available
210
211
 
211
- type_: Union[Unset, str] = UNSET
212
- if not isinstance(self.type_, Unset):
213
- type_ = self.type_.value
214
-
215
212
  remote_id: Union[None, Unset, str]
216
213
  if isinstance(self.remote_id, Unset):
217
214
  remote_id = UNSET
@@ -260,6 +257,7 @@ class Issue:
260
257
  {
261
258
  "url": url,
262
259
  "uuid": uuid,
260
+ "type": type_,
263
261
  "key": key,
264
262
  "backend_id": backend_id,
265
263
  "backend_name": backend_name,
@@ -291,8 +289,6 @@ class Issue:
291
289
  "add_attachment_is_available": add_attachment_is_available,
292
290
  }
293
291
  )
294
- if type_ is not UNSET:
295
- field_dict["type"] = type_
296
292
  if remote_id is not UNSET:
297
293
  field_dict["remote_id"] = remote_id
298
294
  if description is not UNSET:
@@ -323,6 +319,8 @@ class Issue:
323
319
 
324
320
  uuid = UUID(d.pop("uuid"))
325
321
 
322
+ type_ = d.pop("type")
323
+
326
324
  key = d.pop("key")
327
325
 
328
326
  def _parse_backend_id(data: object) -> Union[None, str]:
@@ -512,13 +510,6 @@ class Issue:
512
510
 
513
511
  add_attachment_is_available = d.pop("add_attachment_is_available")
514
512
 
515
- _type_ = d.pop("type", UNSET)
516
- type_: Union[Unset, IssueTypeEnum]
517
- if isinstance(_type_, Unset):
518
- type_ = UNSET
519
- else:
520
- type_ = IssueTypeEnum(_type_)
521
-
522
513
  def _parse_remote_id(data: object) -> Union[None, Unset, str]:
523
514
  if data is None:
524
515
  return data
@@ -582,6 +573,7 @@ class Issue:
582
573
  issue = cls(
583
574
  url=url,
584
575
  uuid=uuid,
576
+ type_=type_,
585
577
  key=key,
586
578
  backend_id=backend_id,
587
579
  backend_name=backend_name,
@@ -611,7 +603,6 @@ class Issue:
611
603
  destroy_is_available=destroy_is_available,
612
604
  add_comment_is_available=add_comment_is_available,
613
605
  add_attachment_is_available=add_attachment_is_available,
614
- type_=type_,
615
606
  remote_id=remote_id,
616
607
  description=description,
617
608
  priority=priority,
@@ -4,7 +4,6 @@ from typing import Any, TypeVar, Union, cast
4
4
  from attrs import define as _attrs_define
5
5
  from attrs import field as _attrs_field
6
6
 
7
- from ..models.issue_type_enum import IssueTypeEnum
8
7
  from ..types import UNSET, Unset
9
8
 
10
9
  T = TypeVar("T", bound="IssueRequest")
@@ -14,8 +13,8 @@ T = TypeVar("T", bound="IssueRequest")
14
13
  class IssueRequest:
15
14
  """
16
15
  Attributes:
16
+ type_ (str):
17
17
  summary (str):
18
- type_ (Union[Unset, IssueTypeEnum]): Default: IssueTypeEnum.INFORMATIONAL.
19
18
  remote_id (Union[None, Unset, str]):
20
19
  description (Union[Unset, str]):
21
20
  priority (Union[Unset, str]):
@@ -29,8 +28,8 @@ class IssueRequest:
29
28
  template (Union[None, Unset, str]):
30
29
  """
31
30
 
31
+ type_: str
32
32
  summary: str
33
- type_: Union[Unset, IssueTypeEnum] = IssueTypeEnum.INFORMATIONAL
34
33
  remote_id: Union[None, Unset, str] = UNSET
35
34
  description: Union[Unset, str] = UNSET
36
35
  priority: Union[Unset, str] = UNSET
@@ -44,11 +43,9 @@ class IssueRequest:
44
43
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
45
44
 
46
45
  def to_dict(self) -> dict[str, Any]:
47
- summary = self.summary
46
+ type_ = self.type_
48
47
 
49
- type_: Union[Unset, str] = UNSET
50
- if not isinstance(self.type_, Unset):
51
- type_ = self.type_.value
48
+ summary = self.summary
52
49
 
53
50
  remote_id: Union[None, Unset, str]
54
51
  if isinstance(self.remote_id, Unset):
@@ -98,11 +95,10 @@ class IssueRequest:
98
95
  field_dict.update(self.additional_properties)
99
96
  field_dict.update(
100
97
  {
98
+ "type": type_,
101
99
  "summary": summary,
102
100
  }
103
101
  )
104
- if type_ is not UNSET:
105
- field_dict["type"] = type_
106
102
  if remote_id is not UNSET:
107
103
  field_dict["remote_id"] = remote_id
108
104
  if description is not UNSET:
@@ -129,14 +125,9 @@ class IssueRequest:
129
125
  @classmethod
130
126
  def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
131
127
  d = dict(src_dict)
132
- summary = d.pop("summary")
128
+ type_ = d.pop("type")
133
129
 
134
- _type_ = d.pop("type", UNSET)
135
- type_: Union[Unset, IssueTypeEnum]
136
- if isinstance(_type_, Unset):
137
- type_ = UNSET
138
- else:
139
- type_ = IssueTypeEnum(_type_)
130
+ summary = d.pop("summary")
140
131
 
141
132
  def _parse_remote_id(data: object) -> Union[None, Unset, str]:
142
133
  if data is None:
@@ -201,8 +192,8 @@ class IssueRequest:
201
192
  template = _parse_template(d.pop("template", UNSET))
202
193
 
203
194
  issue_request = cls(
204
- summary=summary,
205
195
  type_=type_,
196
+ summary=summary,
206
197
  remote_id=remote_id,
207
198
  description=description,
208
199
  priority=priority,
@@ -2,10 +2,10 @@ from enum import Enum
2
2
 
3
3
 
4
4
  class IssueTypeEnum(str, Enum):
5
- CHANGE_REQUEST = "Change Request"
6
- INCIDENT = "Incident"
7
- INFORMATIONAL = "Informational"
8
- SERVICE_REQUEST = "Service Request"
5
+ CHANGE_REQUEST = "CHANGE_REQUEST"
6
+ INCIDENT = "INCIDENT"
7
+ INFORMATIONAL = "INFORMATIONAL"
8
+ SERVICE_REQUEST = "SERVICE_REQUEST"
9
9
 
10
10
  def __str__(self) -> str:
11
11
  return str(self.value)
@@ -33,6 +33,8 @@ class ManagedRancherClusterResourcesListFieldItem(str, Enum):
33
33
  NAME = "name"
34
34
  OFFERING = "offering"
35
35
  OFFERING_BILLABLE = "offering_billable"
36
+ OFFERING_CUSTOMER_NAME = "offering_customer_name"
37
+ OFFERING_CUSTOMER_SLUG = "offering_customer_slug"
36
38
  OFFERING_CUSTOMER_UUID = "offering_customer_uuid"
37
39
  OFFERING_DESCRIPTION = "offering_description"
38
40
  OFFERING_IMAGE = "offering_image"
@@ -33,6 +33,8 @@ class ManagedRancherClusterResourcesRetrieveFieldItem(str, Enum):
33
33
  NAME = "name"
34
34
  OFFERING = "offering"
35
35
  OFFERING_BILLABLE = "offering_billable"
36
+ OFFERING_CUSTOMER_NAME = "offering_customer_name"
37
+ OFFERING_CUSTOMER_SLUG = "offering_customer_slug"
36
38
  OFFERING_CUSTOMER_UUID = "offering_customer_uuid"
37
39
  OFFERING_DESCRIPTION = "offering_description"
38
40
  OFFERING_IMAGE = "offering_image"
@@ -0,0 +1,23 @@
1
+ from enum import Enum
2
+
3
+
4
+ class MarketplaceCourseAccountsCountOItem(str, Enum):
5
+ CREATED = "created"
6
+ EMAIL = "email"
7
+ MODIFIED = "modified"
8
+ PROJECT_END_DATE = "project_end_date"
9
+ PROJECT_NAME = "project_name"
10
+ PROJECT_START_DATE = "project_start_date"
11
+ STATE = "state"
12
+ USERNAME = "username"
13
+ VALUE_0 = "-created"
14
+ VALUE_1 = "-email"
15
+ VALUE_2 = "-modified"
16
+ VALUE_3 = "-project_end_date"
17
+ VALUE_4 = "-project_name"
18
+ VALUE_5 = "-project_start_date"
19
+ VALUE_6 = "-state"
20
+ VALUE_7 = "-username"
21
+
22
+ def __str__(self) -> str:
23
+ return str(self.value)
@@ -0,0 +1,23 @@
1
+ from enum import Enum
2
+
3
+
4
+ class MarketplaceCourseAccountsListOItem(str, Enum):
5
+ CREATED = "created"
6
+ EMAIL = "email"
7
+ MODIFIED = "modified"
8
+ PROJECT_END_DATE = "project_end_date"
9
+ PROJECT_NAME = "project_name"
10
+ PROJECT_START_DATE = "project_start_date"
11
+ STATE = "state"
12
+ USERNAME = "username"
13
+ VALUE_0 = "-created"
14
+ VALUE_1 = "-email"
15
+ VALUE_2 = "-modified"
16
+ VALUE_3 = "-project_end_date"
17
+ VALUE_4 = "-project_name"
18
+ VALUE_5 = "-project_start_date"
19
+ VALUE_6 = "-state"
20
+ VALUE_7 = "-username"
21
+
22
+ def __str__(self) -> str:
23
+ return str(self.value)
@@ -0,0 +1,11 @@
1
+ from enum import Enum
2
+
3
+
4
+ class MarketplaceOfferingUserChecklistCompletionsCountOItem(str, Enum):
5
+ IS_COMPLETED = "is_completed"
6
+ MODIFIED = "modified"
7
+ VALUE_0 = "-is_completed"
8
+ VALUE_1 = "-modified"
9
+
10
+ def __str__(self) -> str:
11
+ return str(self.value)
@@ -0,0 +1,11 @@
1
+ from enum import Enum
2
+
3
+
4
+ class MarketplaceOfferingUserChecklistCompletionsListOItem(str, Enum):
5
+ IS_COMPLETED = "is_completed"
6
+ MODIFIED = "modified"
7
+ VALUE_0 = "-is_completed"
8
+ VALUE_1 = "-modified"
9
+
10
+ def __str__(self) -> str:
11
+ return str(self.value)
@@ -5,11 +5,13 @@ class MarketplaceOfferingUsersListFieldItem(str, Enum):
5
5
  CREATED = "created"
6
6
  CUSTOMER_NAME = "customer_name"
7
7
  CUSTOMER_UUID = "customer_uuid"
8
+ HAS_CONSENT = "has_consent"
8
9
  IS_RESTRICTED = "is_restricted"
9
10
  MODIFIED = "modified"
10
11
  OFFERING = "offering"
11
12
  OFFERING_NAME = "offering_name"
12
13
  OFFERING_UUID = "offering_uuid"
14
+ REQUIRES_RECONSENT = "requires_reconsent"
13
15
  SERVICE_PROVIDER_COMMENT = "service_provider_comment"
14
16
  SERVICE_PROVIDER_COMMENT_URL = "service_provider_comment_url"
15
17
  STATE = "state"
@@ -5,11 +5,13 @@ class MarketplaceOfferingUsersRetrieveFieldItem(str, Enum):
5
5
  CREATED = "created"
6
6
  CUSTOMER_NAME = "customer_name"
7
7
  CUSTOMER_UUID = "customer_uuid"
8
+ HAS_CONSENT = "has_consent"
8
9
  IS_RESTRICTED = "is_restricted"
9
10
  MODIFIED = "modified"
10
11
  OFFERING = "offering"
11
12
  OFFERING_NAME = "offering_name"
12
13
  OFFERING_UUID = "offering_uuid"
14
+ REQUIRES_RECONSENT = "requires_reconsent"
13
15
  SERVICE_PROVIDER_COMMENT = "service_provider_comment"
14
16
  SERVICE_PROVIDER_COMMENT_URL = "service_provider_comment_url"
15
17
  STATE = "state"