waldur-api-client 7.8.4__py3-none-any.whl → 7.8.5__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 (257) hide show
  1. waldur_api_client/api/backend_resources/backend_resources_import_resource.py +3 -3
  2. waldur_api_client/api/booking_resources/booking_resources_count.py +90 -0
  3. waldur_api_client/api/booking_resources/booking_resources_list.py +90 -0
  4. waldur_api_client/api/call_managing_organisations/call_managing_organisations_add_user.py +17 -10
  5. waldur_api_client/api/customers/customers_add_user.py +17 -10
  6. waldur_api_client/api/marketplace_component_usages/marketplace_component_usages_count.py +30 -0
  7. waldur_api_client/api/marketplace_component_usages/marketplace_component_usages_list.py +30 -0
  8. waldur_api_client/api/marketplace_customer_component_usage_policies/__init__.py +1 -0
  9. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_actions_count.py +125 -0
  10. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_actions_retrieve.py +119 -0
  11. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_count.py +239 -0
  12. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_create.py +152 -0
  13. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_destroy.py +89 -0
  14. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_list.py +242 -0
  15. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_partial_update.py +166 -0
  16. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_retrieve.py +144 -0
  17. waldur_api_client/api/marketplace_customer_component_usage_policies/marketplace_customer_component_usage_policies_update.py +166 -0
  18. waldur_api_client/api/marketplace_orders/marketplace_orders_set_backend_id.py +105 -0
  19. waldur_api_client/api/marketplace_plans/marketplace_plans_update_discounts.py +123 -0
  20. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_add_partition.py +168 -0
  21. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_add_software_catalog.py +168 -0
  22. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_add_user.py +19 -10
  23. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_component_stats_list.py +15 -0
  24. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_costs_list.py +15 -0
  25. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_count.py +15 -0
  26. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_create_offering_component.py +1 -1
  27. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_customers_list.py +15 -0
  28. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_groups_count.py +15 -0
  29. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_groups_list.py +15 -0
  30. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_list.py +15 -0
  31. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_remove_partition.py +107 -0
  32. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_remove_software_catalog.py +107 -0
  33. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_update_partition_partial_update.py +168 -0
  34. waldur_api_client/api/marketplace_provider_offerings/marketplace_provider_offerings_update_software_catalog_partial_update.py +168 -0
  35. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_count.py +90 -0
  36. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_list.py +90 -0
  37. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_set_downscaled.py +107 -0
  38. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_set_paused.py +107 -0
  39. waldur_api_client/api/marketplace_provider_resources/marketplace_provider_resources_set_restrict_member_access.py +107 -0
  40. waldur_api_client/api/marketplace_public_offerings/marketplace_public_offerings_count.py +15 -0
  41. waldur_api_client/api/marketplace_public_offerings/marketplace_public_offerings_list.py +15 -0
  42. waldur_api_client/api/marketplace_resources/marketplace_resources_count.py +90 -0
  43. waldur_api_client/api/marketplace_resources/marketplace_resources_list.py +90 -0
  44. waldur_api_client/api/marketplace_resources/marketplace_resources_set_downscaled.py +107 -0
  45. waldur_api_client/api/marketplace_resources/marketplace_resources_set_paused.py +107 -0
  46. waldur_api_client/api/marketplace_resources/marketplace_resources_set_restrict_member_access.py +107 -0
  47. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_add_user.py +17 -10
  48. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_customer_projects_list.py +15 -0
  49. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_offerings_list.py +15 -0
  50. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_projects_list.py +14 -24
  51. waldur_api_client/api/marketplace_service_providers/marketplace_service_providers_set_offerings_username.py +8 -67
  52. waldur_api_client/api/marketplace_site_agent_identities/__init__.py +1 -0
  53. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_count.py +240 -0
  54. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_create.py +148 -0
  55. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_destroy.py +89 -0
  56. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_list.py +241 -0
  57. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_register_event_subscription.py +176 -0
  58. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_register_service.py +170 -0
  59. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_retrieve.py +140 -0
  60. waldur_api_client/api/marketplace_site_agent_identities/marketplace_site_agent_identities_update.py +162 -0
  61. waldur_api_client/api/marketplace_site_agent_processors/__init__.py +1 -0
  62. waldur_api_client/api/marketplace_site_agent_processors/marketplace_site_agent_processors_count.py +240 -0
  63. waldur_api_client/api/marketplace_site_agent_processors/marketplace_site_agent_processors_list.py +241 -0
  64. waldur_api_client/api/marketplace_site_agent_processors/marketplace_site_agent_processors_retrieve.py +142 -0
  65. waldur_api_client/api/marketplace_site_agent_services/__init__.py +1 -0
  66. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_count.py +229 -0
  67. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_list.py +230 -0
  68. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_register_processor.py +172 -0
  69. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_retrieve.py +140 -0
  70. waldur_api_client/api/marketplace_site_agent_services/marketplace_site_agent_services_set_statistics.py +166 -0
  71. waldur_api_client/api/marketplace_software_catalogs/__init__.py +1 -0
  72. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_count.py +225 -0
  73. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_create.py +150 -0
  74. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_destroy.py +89 -0
  75. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_list.py +226 -0
  76. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_partial_update.py +164 -0
  77. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_retrieve.py +142 -0
  78. waldur_api_client/api/marketplace_software_catalogs/marketplace_software_catalogs_update.py +164 -0
  79. waldur_api_client/api/marketplace_software_packages/__init__.py +1 -0
  80. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_count.py +352 -0
  81. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_create.py +150 -0
  82. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_destroy.py +89 -0
  83. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_list.py +353 -0
  84. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_partial_update.py +164 -0
  85. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_retrieve.py +142 -0
  86. waldur_api_client/api/marketplace_software_packages/marketplace_software_packages_update.py +164 -0
  87. waldur_api_client/api/marketplace_software_targets/__init__.py +1 -0
  88. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_count.py +313 -0
  89. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_create.py +117 -0
  90. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_destroy.py +89 -0
  91. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_list.py +314 -0
  92. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_partial_update.py +142 -0
  93. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_retrieve.py +142 -0
  94. waldur_api_client/api/marketplace_software_targets/marketplace_software_targets_update.py +142 -0
  95. waldur_api_client/api/marketplace_software_versions/__init__.py +1 -0
  96. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_count.py +310 -0
  97. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_create.py +117 -0
  98. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_destroy.py +89 -0
  99. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_list.py +311 -0
  100. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_partial_update.py +142 -0
  101. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_retrieve.py +142 -0
  102. waldur_api_client/api/marketplace_software_versions/marketplace_software_versions_update.py +142 -0
  103. waldur_api_client/api/onboarding_justifications/onboarding_justifications_approve.py +168 -0
  104. waldur_api_client/api/onboarding_justifications/onboarding_justifications_reject.py +168 -0
  105. waldur_api_client/api/projects/projects_add_user.py +17 -10
  106. waldur_api_client/api/projects/projects_count.py +30 -0
  107. waldur_api_client/api/projects/projects_list.py +30 -0
  108. waldur_api_client/api/projects/projects_move_project.py +19 -10
  109. waldur_api_client/api/projects/projects_recover.py +166 -0
  110. waldur_api_client/api/proposal_proposals/proposal_proposals_add_user.py +17 -10
  111. waldur_api_client/api/proposal_protected_calls/proposal_protected_calls_add_user.py +17 -10
  112. waldur_api_client/api/remote_waldur_api/remote_waldur_api_pull_resource_robot_accounts.py +88 -0
  113. waldur_api_client/models/__init__.py +152 -4
  114. waldur_api_client/models/agent_event_subscription_create_request.py +71 -0
  115. waldur_api_client/models/agent_identity.py +211 -0
  116. waldur_api_client/models/agent_identity_request.py +157 -0
  117. waldur_api_client/models/agent_processor.py +170 -0
  118. waldur_api_client/models/agent_processor_create_request.py +89 -0
  119. waldur_api_client/models/agent_service.py +172 -0
  120. waldur_api_client/models/agent_service_create_request.py +81 -0
  121. waldur_api_client/models/agent_service_state.py +10 -0
  122. waldur_api_client/models/agent_service_statistics_request.py +59 -0
  123. waldur_api_client/models/base_provider_plan.py +21 -0
  124. waldur_api_client/models/base_public_plan.py +21 -0
  125. waldur_api_client/models/booking_offerings_list_field_item.py +2 -0
  126. waldur_api_client/models/booking_offerings_retrieve_field_item.py +2 -0
  127. waldur_api_client/models/booking_resource.py +33 -0
  128. waldur_api_client/models/booking_resource_renewal_date_type_0.py +53 -0
  129. waldur_api_client/models/booking_resources_list_field_item.py +1 -0
  130. waldur_api_client/models/booking_resources_retrieve_field_item.py +1 -0
  131. waldur_api_client/models/call_managing_organisations_add_user_response_400.py +65 -0
  132. waldur_api_client/models/constance_settings.py +81 -45
  133. waldur_api_client/models/constance_settings_request.py +81 -45
  134. waldur_api_client/models/constance_settings_request_form.py +81 -45
  135. waldur_api_client/models/constance_settings_request_multipart.py +134 -71
  136. waldur_api_client/models/customer_component_usage_policy.py +175 -0
  137. waldur_api_client/models/customer_component_usage_policy_request.py +102 -0
  138. waldur_api_client/models/customers_add_user_response_400.py +65 -0
  139. waldur_api_client/models/discount_config_request.py +91 -0
  140. waldur_api_client/models/discounts_update_request.py +65 -0
  141. waldur_api_client/models/discounts_update_request_discounts.py +57 -0
  142. waldur_api_client/models/issue.py +0 -25
  143. waldur_api_client/models/managed_rancher_cluster_resources_list_field_item.py +1 -0
  144. waldur_api_client/models/managed_rancher_cluster_resources_retrieve_field_item.py +1 -0
  145. waldur_api_client/models/marketplace_orders_count_state_item.py +1 -0
  146. waldur_api_client/models/marketplace_orders_list_field_item.py +2 -0
  147. waldur_api_client/models/marketplace_orders_list_state_item.py +1 -0
  148. waldur_api_client/models/marketplace_orders_retrieve_field_item.py +2 -0
  149. waldur_api_client/models/marketplace_provider_offerings_add_user_response_400.py +65 -0
  150. waldur_api_client/models/marketplace_provider_offerings_list_course_accounts_retrieve_field_item.py +2 -0
  151. waldur_api_client/models/marketplace_provider_offerings_list_customer_service_accounts_retrieve_field_item.py +2 -0
  152. waldur_api_client/models/marketplace_provider_offerings_list_field_item.py +2 -0
  153. waldur_api_client/models/marketplace_provider_offerings_list_project_service_accounts_retrieve_field_item.py +2 -0
  154. waldur_api_client/models/marketplace_provider_offerings_retrieve_field_item.py +2 -0
  155. waldur_api_client/models/marketplace_provider_offerings_stats_retrieve_field_item.py +2 -0
  156. waldur_api_client/models/marketplace_provider_offerings_user_has_resource_access_retrieve_field_item.py +2 -0
  157. waldur_api_client/models/marketplace_provider_resources_details_retrieve_field_item.py +1 -0
  158. waldur_api_client/models/marketplace_provider_resources_list_field_item.py +1 -0
  159. waldur_api_client/models/marketplace_provider_resources_retrieve_field_item.py +1 -0
  160. waldur_api_client/models/marketplace_public_offerings_list_field_item.py +2 -0
  161. waldur_api_client/models/marketplace_public_offerings_retrieve_field_item.py +2 -0
  162. waldur_api_client/models/marketplace_resources_details_retrieve_field_item.py +1 -0
  163. waldur_api_client/models/marketplace_resources_list_field_item.py +1 -0
  164. waldur_api_client/models/marketplace_resources_retrieve_field_item.py +1 -0
  165. waldur_api_client/models/marketplace_service_providers_add_user_response_400.py +65 -0
  166. waldur_api_client/models/marketplace_site_agent_services_count_state_item.py +10 -0
  167. waldur_api_client/models/marketplace_site_agent_services_list_state_item.py +10 -0
  168. waldur_api_client/models/marketplace_software_catalogs_count_o_item.py +15 -0
  169. waldur_api_client/models/marketplace_software_catalogs_list_o_item.py +15 -0
  170. waldur_api_client/models/marketplace_software_packages_count_o_item.py +17 -0
  171. waldur_api_client/models/marketplace_software_packages_list_o_item.py +17 -0
  172. waldur_api_client/models/marketplace_software_targets_count_o_item.py +15 -0
  173. waldur_api_client/models/marketplace_software_targets_list_o_item.py +15 -0
  174. waldur_api_client/models/marketplace_software_versions_count_o_item.py +15 -0
  175. waldur_api_client/models/marketplace_software_versions_list_o_item.py +15 -0
  176. waldur_api_client/models/merged_plugin_options.py +47 -8
  177. waldur_api_client/models/merged_plugin_options_request.py +47 -8
  178. waldur_api_client/models/nested_agent_processor.py +154 -0
  179. waldur_api_client/models/nested_agent_service.py +134 -0
  180. waldur_api_client/models/nested_agent_service_request.py +90 -0
  181. waldur_api_client/models/nested_customer_usage_policy_component.py +103 -0
  182. waldur_api_client/models/nested_customer_usage_policy_component_request.py +87 -0
  183. waldur_api_client/models/nested_partition.py +412 -0
  184. waldur_api_client/models/nested_partition_request.py +397 -0
  185. waldur_api_client/models/nested_plan_component.py +155 -0
  186. waldur_api_client/models/nested_plan_component_request.py +128 -0
  187. waldur_api_client/models/nested_software_catalog.py +134 -0
  188. waldur_api_client/models/nested_software_catalog_catalog.py +86 -0
  189. waldur_api_client/models/nested_software_catalog_partition.py +86 -0
  190. waldur_api_client/models/nested_software_catalog_request.py +68 -0
  191. waldur_api_client/models/nested_software_target.py +84 -0
  192. waldur_api_client/models/nested_software_target_request.py +75 -0
  193. waldur_api_client/models/nested_software_version.py +124 -0
  194. waldur_api_client/models/nested_software_version_request.py +93 -0
  195. waldur_api_client/models/observable_object_type_enum.py +14 -0
  196. waldur_api_client/models/offering.py +42 -0
  197. waldur_api_client/models/offering_create.py +36 -0
  198. waldur_api_client/models/offering_partition.py +440 -0
  199. waldur_api_client/models/offering_partition_request.py +406 -0
  200. waldur_api_client/models/offering_software_catalog.py +176 -0
  201. waldur_api_client/models/offering_software_catalog_request.py +118 -0
  202. waldur_api_client/models/onboarding_justification.py +35 -6
  203. waldur_api_client/models/onboarding_justification_create_request.py +8 -5
  204. waldur_api_client/models/onboarding_justification_request.py +20 -6
  205. waldur_api_client/models/onboarding_justification_review_request.py +59 -0
  206. waldur_api_client/models/order_backend_id_request.py +59 -0
  207. waldur_api_client/models/order_details.py +39 -0
  208. waldur_api_client/models/order_state.py +1 -0
  209. waldur_api_client/models/patched_customer_component_usage_policy_request.py +104 -0
  210. waldur_api_client/models/patched_offering_partition_request.py +412 -0
  211. waldur_api_client/models/patched_offering_software_catalog_update_request.py +131 -0
  212. waldur_api_client/models/patched_onboarding_justification_request.py +16 -5
  213. waldur_api_client/models/patched_project_request.py +9 -0
  214. waldur_api_client/models/patched_project_request_form.py +9 -0
  215. waldur_api_client/models/patched_project_request_multipart.py +12 -0
  216. waldur_api_client/models/patched_software_catalog_request.py +86 -0
  217. waldur_api_client/models/patched_software_package_request.py +86 -0
  218. waldur_api_client/models/plan_component.py +40 -0
  219. waldur_api_client/models/project.py +27 -0
  220. waldur_api_client/models/project_recovery_request.py +70 -0
  221. waldur_api_client/models/project_request.py +9 -0
  222. waldur_api_client/models/project_request_form.py +9 -0
  223. waldur_api_client/models/project_request_multipart.py +12 -0
  224. waldur_api_client/models/project_user.py +21 -4
  225. waldur_api_client/models/projects_add_user_response_400.py +65 -0
  226. waldur_api_client/models/projects_list_field_item.py +3 -0
  227. waldur_api_client/models/projects_move_project_response_400.py +65 -0
  228. waldur_api_client/models/projects_retrieve_field_item.py +3 -0
  229. waldur_api_client/models/proposal_proposals_add_user_response_400.py +65 -0
  230. waldur_api_client/models/proposal_protected_calls_add_user_response_400.py +65 -0
  231. waldur_api_client/models/provider_offering_details.py +42 -0
  232. waldur_api_client/models/provider_plan_details.py +18 -0
  233. waldur_api_client/models/public_offering_details.py +42 -0
  234. waldur_api_client/models/remote_resource_order_remote_state_enum.py +1 -0
  235. waldur_api_client/models/{set_offerings_username.py → remove_partition_request.py} +11 -19
  236. waldur_api_client/models/remove_software_catalog_request.py +60 -0
  237. waldur_api_client/models/resource.py +33 -0
  238. waldur_api_client/models/resource_downscaled_request.py +59 -0
  239. waldur_api_client/models/resource_paused_request.py +59 -0
  240. waldur_api_client/models/resource_renewal_date_type_0.py +53 -0
  241. waldur_api_client/models/resource_restrict_member_access_request.py +59 -0
  242. waldur_api_client/models/software_catalog.py +130 -0
  243. waldur_api_client/models/software_catalog_request.py +87 -0
  244. waldur_api_client/models/software_catalog_uuid.py +60 -0
  245. waldur_api_client/models/software_package.py +168 -0
  246. waldur_api_client/models/software_package_request.py +87 -0
  247. waldur_api_client/models/software_target.py +110 -0
  248. waldur_api_client/models/software_version.py +135 -0
  249. waldur_api_client/models/user.py +20 -0
  250. waldur_api_client/models/users_list_field_item.py +1 -0
  251. waldur_api_client/models/users_me_retrieve_field_item.py +1 -0
  252. waldur_api_client/models/users_retrieve_field_item.py +1 -0
  253. {waldur_api_client-7.8.4.dist-info → waldur_api_client-7.8.5.dist-info}/METADATA +1 -1
  254. {waldur_api_client-7.8.4.dist-info → waldur_api_client-7.8.5.dist-info}/RECORD +256 -103
  255. waldur_api_client/models/marketplace_service_providers_projects_list_field_item.py +0 -37
  256. {waldur_api_client-7.8.4.dist-info → waldur_api_client-7.8.5.dist-info}/WHEEL +0 -0
  257. {waldur_api_client-7.8.4.dist-info → waldur_api_client-7.8.5.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,60 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar
3
+ from uuid import UUID
4
+
5
+ from attrs import define as _attrs_define
6
+ from attrs import field as _attrs_field
7
+
8
+ T = TypeVar("T", bound="RemoveSoftwareCatalogRequest")
9
+
10
+
11
+ @_attrs_define
12
+ class RemoveSoftwareCatalogRequest:
13
+ """
14
+ Attributes:
15
+ offering_catalog_uuid (UUID):
16
+ """
17
+
18
+ offering_catalog_uuid: UUID
19
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
20
+
21
+ def to_dict(self) -> dict[str, Any]:
22
+ offering_catalog_uuid = str(self.offering_catalog_uuid)
23
+
24
+ field_dict: dict[str, Any] = {}
25
+ field_dict.update(self.additional_properties)
26
+ field_dict.update(
27
+ {
28
+ "offering_catalog_uuid": offering_catalog_uuid,
29
+ }
30
+ )
31
+
32
+ return field_dict
33
+
34
+ @classmethod
35
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
36
+ d = dict(src_dict)
37
+ offering_catalog_uuid = UUID(d.pop("offering_catalog_uuid"))
38
+
39
+ remove_software_catalog_request = cls(
40
+ offering_catalog_uuid=offering_catalog_uuid,
41
+ )
42
+
43
+ remove_software_catalog_request.additional_properties = d
44
+ return remove_software_catalog_request
45
+
46
+ @property
47
+ def additional_keys(self) -> list[str]:
48
+ return list(self.additional_properties.keys())
49
+
50
+ def __getitem__(self, key: str) -> Any:
51
+ return self.additional_properties[key]
52
+
53
+ def __setitem__(self, key: str, value: Any) -> None:
54
+ self.additional_properties[key] = value
55
+
56
+ def __delitem__(self, key: str) -> None:
57
+ del self.additional_properties[key]
58
+
59
+ def __contains__(self, key: str) -> bool:
60
+ return key in self.additional_properties
@@ -20,6 +20,7 @@ if TYPE_CHECKING:
20
20
  from ..models.resource_current_usages import ResourceCurrentUsages
21
21
  from ..models.resource_limit_usage import ResourceLimitUsage
22
22
  from ..models.resource_limits import ResourceLimits
23
+ from ..models.resource_renewal_date_type_0 import ResourceRenewalDateType0
23
24
 
24
25
 
25
26
  T = TypeVar("T", bound="Resource")
@@ -108,6 +109,7 @@ class Resource:
108
109
  customer_slug (Union[Unset, str]):
109
110
  user_requires_reconsent (Union[Unset, bool]): Check if the current user needs to re-consent for this resource's
110
111
  offering.
112
+ renewal_date (Union['ResourceRenewalDateType0', None, Unset]):
111
113
  """
112
114
 
113
115
  offering: Union[Unset, str] = UNSET
@@ -185,10 +187,12 @@ class Resource:
185
187
  project_slug: Union[Unset, str] = UNSET
186
188
  customer_slug: Union[Unset, str] = UNSET
187
189
  user_requires_reconsent: Union[Unset, bool] = UNSET
190
+ renewal_date: Union["ResourceRenewalDateType0", None, Unset] = UNSET
188
191
  additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
189
192
 
190
193
  def to_dict(self) -> dict[str, Any]:
191
194
  from ..models.order_details import OrderDetails
195
+ from ..models.resource_renewal_date_type_0 import ResourceRenewalDateType0
192
196
 
193
197
  offering = self.offering
194
198
 
@@ -450,6 +454,14 @@ class Resource:
450
454
 
451
455
  user_requires_reconsent = self.user_requires_reconsent
452
456
 
457
+ renewal_date: Union[None, Unset, dict[str, Any]]
458
+ if isinstance(self.renewal_date, Unset):
459
+ renewal_date = UNSET
460
+ elif isinstance(self.renewal_date, ResourceRenewalDateType0):
461
+ renewal_date = self.renewal_date.to_dict()
462
+ else:
463
+ renewal_date = self.renewal_date
464
+
453
465
  field_dict: dict[str, Any] = {}
454
466
  field_dict.update(self.additional_properties)
455
467
  field_dict.update({})
@@ -603,6 +615,8 @@ class Resource:
603
615
  field_dict["customer_slug"] = customer_slug
604
616
  if user_requires_reconsent is not UNSET:
605
617
  field_dict["user_requires_reconsent"] = user_requires_reconsent
618
+ if renewal_date is not UNSET:
619
+ field_dict["renewal_date"] = renewal_date
606
620
 
607
621
  return field_dict
608
622
 
@@ -616,6 +630,7 @@ class Resource:
616
630
  from ..models.resource_current_usages import ResourceCurrentUsages
617
631
  from ..models.resource_limit_usage import ResourceLimitUsage
618
632
  from ..models.resource_limits import ResourceLimits
633
+ from ..models.resource_renewal_date_type_0 import ResourceRenewalDateType0
619
634
 
620
635
  d = dict(src_dict)
621
636
  offering = d.pop("offering", UNSET)
@@ -1008,6 +1023,23 @@ class Resource:
1008
1023
 
1009
1024
  user_requires_reconsent = d.pop("user_requires_reconsent", UNSET)
1010
1025
 
1026
+ def _parse_renewal_date(data: object) -> Union["ResourceRenewalDateType0", None, Unset]:
1027
+ if data is None:
1028
+ return data
1029
+ if isinstance(data, Unset):
1030
+ return data
1031
+ try:
1032
+ if not isinstance(data, dict):
1033
+ raise TypeError()
1034
+ renewal_date_type_0 = ResourceRenewalDateType0.from_dict(data)
1035
+
1036
+ return renewal_date_type_0
1037
+ except: # noqa: E722
1038
+ pass
1039
+ return cast(Union["ResourceRenewalDateType0", None, Unset], data)
1040
+
1041
+ renewal_date = _parse_renewal_date(d.pop("renewal_date", UNSET))
1042
+
1011
1043
  resource = cls(
1012
1044
  offering=offering,
1013
1045
  offering_name=offering_name,
@@ -1084,6 +1116,7 @@ class Resource:
1084
1116
  project_slug=project_slug,
1085
1117
  customer_slug=customer_slug,
1086
1118
  user_requires_reconsent=user_requires_reconsent,
1119
+ renewal_date=renewal_date,
1087
1120
  )
1088
1121
 
1089
1122
  resource.additional_properties = d
@@ -0,0 +1,59 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ from ..types import UNSET, Unset
8
+
9
+ T = TypeVar("T", bound="ResourceDownscaledRequest")
10
+
11
+
12
+ @_attrs_define
13
+ class ResourceDownscaledRequest:
14
+ """
15
+ Attributes:
16
+ downscaled (Union[Unset, bool]):
17
+ """
18
+
19
+ downscaled: Union[Unset, bool] = UNSET
20
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
21
+
22
+ def to_dict(self) -> dict[str, Any]:
23
+ downscaled = self.downscaled
24
+
25
+ field_dict: dict[str, Any] = {}
26
+ field_dict.update(self.additional_properties)
27
+ field_dict.update({})
28
+ if downscaled is not UNSET:
29
+ field_dict["downscaled"] = downscaled
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
+ downscaled = d.pop("downscaled", UNSET)
37
+
38
+ resource_downscaled_request = cls(
39
+ downscaled=downscaled,
40
+ )
41
+
42
+ resource_downscaled_request.additional_properties = d
43
+ return resource_downscaled_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
@@ -0,0 +1,59 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ from ..types import UNSET, Unset
8
+
9
+ T = TypeVar("T", bound="ResourcePausedRequest")
10
+
11
+
12
+ @_attrs_define
13
+ class ResourcePausedRequest:
14
+ """
15
+ Attributes:
16
+ paused (Union[Unset, bool]):
17
+ """
18
+
19
+ paused: Union[Unset, bool] = UNSET
20
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
21
+
22
+ def to_dict(self) -> dict[str, Any]:
23
+ paused = self.paused
24
+
25
+ field_dict: dict[str, Any] = {}
26
+ field_dict.update(self.additional_properties)
27
+ field_dict.update({})
28
+ if paused is not UNSET:
29
+ field_dict["paused"] = paused
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
+ paused = d.pop("paused", UNSET)
37
+
38
+ resource_paused_request = cls(
39
+ paused=paused,
40
+ )
41
+
42
+ resource_paused_request.additional_properties = d
43
+ return resource_paused_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
@@ -0,0 +1,53 @@
1
+ import datetime
2
+ from collections.abc import Mapping
3
+ from typing import Any, TypeVar
4
+
5
+ from attrs import define as _attrs_define
6
+ from attrs import field as _attrs_field
7
+ from dateutil.parser import isoparse
8
+
9
+ T = TypeVar("T", bound="ResourceRenewalDateType0")
10
+
11
+
12
+ @_attrs_define
13
+ class ResourceRenewalDateType0:
14
+ """ """
15
+
16
+ additional_properties: dict[str, datetime.date] = _attrs_field(init=False, factory=dict)
17
+
18
+ def to_dict(self) -> dict[str, Any]:
19
+ field_dict: dict[str, Any] = {}
20
+ for prop_name, prop in self.additional_properties.items():
21
+ field_dict[prop_name] = prop.isoformat()
22
+
23
+ return field_dict
24
+
25
+ @classmethod
26
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
27
+ d = dict(src_dict)
28
+ resource_renewal_date_type_0 = cls()
29
+
30
+ additional_properties = {}
31
+ for prop_name, prop_dict in d.items():
32
+ additional_property = isoparse(prop_dict).date()
33
+
34
+ additional_properties[prop_name] = additional_property
35
+
36
+ resource_renewal_date_type_0.additional_properties = additional_properties
37
+ return resource_renewal_date_type_0
38
+
39
+ @property
40
+ def additional_keys(self) -> list[str]:
41
+ return list(self.additional_properties.keys())
42
+
43
+ def __getitem__(self, key: str) -> datetime.date:
44
+ return self.additional_properties[key]
45
+
46
+ def __setitem__(self, key: str, value: datetime.date) -> None:
47
+ self.additional_properties[key] = value
48
+
49
+ def __delitem__(self, key: str) -> None:
50
+ del self.additional_properties[key]
51
+
52
+ def __contains__(self, key: str) -> bool:
53
+ return key in self.additional_properties
@@ -0,0 +1,59 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ from ..types import UNSET, Unset
8
+
9
+ T = TypeVar("T", bound="ResourceRestrictMemberAccessRequest")
10
+
11
+
12
+ @_attrs_define
13
+ class ResourceRestrictMemberAccessRequest:
14
+ """
15
+ Attributes:
16
+ restrict_member_access (Union[Unset, bool]):
17
+ """
18
+
19
+ restrict_member_access: Union[Unset, bool] = UNSET
20
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
21
+
22
+ def to_dict(self) -> dict[str, Any]:
23
+ restrict_member_access = self.restrict_member_access
24
+
25
+ field_dict: dict[str, Any] = {}
26
+ field_dict.update(self.additional_properties)
27
+ field_dict.update({})
28
+ if restrict_member_access is not UNSET:
29
+ field_dict["restrict_member_access"] = restrict_member_access
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
+ restrict_member_access = d.pop("restrict_member_access", UNSET)
37
+
38
+ resource_restrict_member_access_request = cls(
39
+ restrict_member_access=restrict_member_access,
40
+ )
41
+
42
+ resource_restrict_member_access_request.additional_properties = d
43
+ return resource_restrict_member_access_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
@@ -0,0 +1,130 @@
1
+ import datetime
2
+ from collections.abc import Mapping
3
+ from typing import Any, TypeVar, Union
4
+ from uuid import UUID
5
+
6
+ from attrs import define as _attrs_define
7
+ from attrs import field as _attrs_field
8
+ from dateutil.parser import isoparse
9
+
10
+ from ..types import UNSET, Unset
11
+
12
+ T = TypeVar("T", bound="SoftwareCatalog")
13
+
14
+
15
+ @_attrs_define
16
+ class SoftwareCatalog:
17
+ """
18
+ Attributes:
19
+ url (str):
20
+ uuid (UUID):
21
+ created (datetime.datetime):
22
+ modified (datetime.datetime):
23
+ name (str): Catalog name (e.g., EESSI)
24
+ version (str): Catalog version (e.g., 2023.06)
25
+ package_count (int):
26
+ source_url (Union[Unset, str]): Catalog source URL
27
+ description (Union[Unset, str]):
28
+ """
29
+
30
+ url: str
31
+ uuid: UUID
32
+ created: datetime.datetime
33
+ modified: datetime.datetime
34
+ name: str
35
+ version: str
36
+ package_count: int
37
+ source_url: Union[Unset, str] = UNSET
38
+ description: Union[Unset, str] = UNSET
39
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
40
+
41
+ def to_dict(self) -> dict[str, Any]:
42
+ url = self.url
43
+
44
+ uuid = str(self.uuid)
45
+
46
+ created = self.created.isoformat()
47
+
48
+ modified = self.modified.isoformat()
49
+
50
+ name = self.name
51
+
52
+ version = self.version
53
+
54
+ package_count = self.package_count
55
+
56
+ source_url = self.source_url
57
+
58
+ description = self.description
59
+
60
+ field_dict: dict[str, Any] = {}
61
+ field_dict.update(self.additional_properties)
62
+ field_dict.update(
63
+ {
64
+ "url": url,
65
+ "uuid": uuid,
66
+ "created": created,
67
+ "modified": modified,
68
+ "name": name,
69
+ "version": version,
70
+ "package_count": package_count,
71
+ }
72
+ )
73
+ if source_url is not UNSET:
74
+ field_dict["source_url"] = source_url
75
+ if description is not UNSET:
76
+ field_dict["description"] = description
77
+
78
+ return field_dict
79
+
80
+ @classmethod
81
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
82
+ d = dict(src_dict)
83
+ url = d.pop("url")
84
+
85
+ uuid = UUID(d.pop("uuid"))
86
+
87
+ created = isoparse(d.pop("created"))
88
+
89
+ modified = isoparse(d.pop("modified"))
90
+
91
+ name = d.pop("name")
92
+
93
+ version = d.pop("version")
94
+
95
+ package_count = d.pop("package_count")
96
+
97
+ source_url = d.pop("source_url", UNSET)
98
+
99
+ description = d.pop("description", UNSET)
100
+
101
+ software_catalog = cls(
102
+ url=url,
103
+ uuid=uuid,
104
+ created=created,
105
+ modified=modified,
106
+ name=name,
107
+ version=version,
108
+ package_count=package_count,
109
+ source_url=source_url,
110
+ description=description,
111
+ )
112
+
113
+ software_catalog.additional_properties = d
114
+ return software_catalog
115
+
116
+ @property
117
+ def additional_keys(self) -> list[str]:
118
+ return list(self.additional_properties.keys())
119
+
120
+ def __getitem__(self, key: str) -> Any:
121
+ return self.additional_properties[key]
122
+
123
+ def __setitem__(self, key: str, value: Any) -> None:
124
+ self.additional_properties[key] = value
125
+
126
+ def __delitem__(self, key: str) -> None:
127
+ del self.additional_properties[key]
128
+
129
+ def __contains__(self, key: str) -> bool:
130
+ return key in self.additional_properties
@@ -0,0 +1,87 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar, Union
3
+
4
+ from attrs import define as _attrs_define
5
+ from attrs import field as _attrs_field
6
+
7
+ from ..types import UNSET, Unset
8
+
9
+ T = TypeVar("T", bound="SoftwareCatalogRequest")
10
+
11
+
12
+ @_attrs_define
13
+ class SoftwareCatalogRequest:
14
+ """
15
+ Attributes:
16
+ name (str): Catalog name (e.g., EESSI)
17
+ version (str): Catalog version (e.g., 2023.06)
18
+ source_url (Union[Unset, str]): Catalog source URL
19
+ description (Union[Unset, str]):
20
+ """
21
+
22
+ name: str
23
+ version: str
24
+ source_url: Union[Unset, str] = UNSET
25
+ description: Union[Unset, str] = UNSET
26
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
27
+
28
+ def to_dict(self) -> dict[str, Any]:
29
+ name = self.name
30
+
31
+ version = self.version
32
+
33
+ source_url = self.source_url
34
+
35
+ description = self.description
36
+
37
+ field_dict: dict[str, Any] = {}
38
+ field_dict.update(self.additional_properties)
39
+ field_dict.update(
40
+ {
41
+ "name": name,
42
+ "version": version,
43
+ }
44
+ )
45
+ if source_url is not UNSET:
46
+ field_dict["source_url"] = source_url
47
+ if description is not UNSET:
48
+ field_dict["description"] = description
49
+
50
+ return field_dict
51
+
52
+ @classmethod
53
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
54
+ d = dict(src_dict)
55
+ name = d.pop("name")
56
+
57
+ version = d.pop("version")
58
+
59
+ source_url = d.pop("source_url", UNSET)
60
+
61
+ description = d.pop("description", UNSET)
62
+
63
+ software_catalog_request = cls(
64
+ name=name,
65
+ version=version,
66
+ source_url=source_url,
67
+ description=description,
68
+ )
69
+
70
+ software_catalog_request.additional_properties = d
71
+ return software_catalog_request
72
+
73
+ @property
74
+ def additional_keys(self) -> list[str]:
75
+ return list(self.additional_properties.keys())
76
+
77
+ def __getitem__(self, key: str) -> Any:
78
+ return self.additional_properties[key]
79
+
80
+ def __setitem__(self, key: str, value: Any) -> None:
81
+ self.additional_properties[key] = value
82
+
83
+ def __delitem__(self, key: str) -> None:
84
+ del self.additional_properties[key]
85
+
86
+ def __contains__(self, key: str) -> bool:
87
+ return key in self.additional_properties
@@ -0,0 +1,60 @@
1
+ from collections.abc import Mapping
2
+ from typing import Any, TypeVar
3
+ from uuid import UUID
4
+
5
+ from attrs import define as _attrs_define
6
+ from attrs import field as _attrs_field
7
+
8
+ T = TypeVar("T", bound="SoftwareCatalogUUID")
9
+
10
+
11
+ @_attrs_define
12
+ class SoftwareCatalogUUID:
13
+ """
14
+ Attributes:
15
+ uuid (UUID):
16
+ """
17
+
18
+ uuid: UUID
19
+ additional_properties: dict[str, Any] = _attrs_field(init=False, factory=dict)
20
+
21
+ def to_dict(self) -> dict[str, Any]:
22
+ uuid = str(self.uuid)
23
+
24
+ field_dict: dict[str, Any] = {}
25
+ field_dict.update(self.additional_properties)
26
+ field_dict.update(
27
+ {
28
+ "uuid": uuid,
29
+ }
30
+ )
31
+
32
+ return field_dict
33
+
34
+ @classmethod
35
+ def from_dict(cls: type[T], src_dict: Mapping[str, Any]) -> T:
36
+ d = dict(src_dict)
37
+ uuid = UUID(d.pop("uuid"))
38
+
39
+ software_catalog_uuid = cls(
40
+ uuid=uuid,
41
+ )
42
+
43
+ software_catalog_uuid.additional_properties = d
44
+ return software_catalog_uuid
45
+
46
+ @property
47
+ def additional_keys(self) -> list[str]:
48
+ return list(self.additional_properties.keys())
49
+
50
+ def __getitem__(self, key: str) -> Any:
51
+ return self.additional_properties[key]
52
+
53
+ def __setitem__(self, key: str, value: Any) -> None:
54
+ self.additional_properties[key] = value
55
+
56
+ def __delitem__(self, key: str) -> None:
57
+ del self.additional_properties[key]
58
+
59
+ def __contains__(self, key: str) -> bool:
60
+ return key in self.additional_properties