volcano-sdk 0.32.7 → 0.34.0

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.
Files changed (496) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +54 -2
  3. data/lib/volcano/auth_profile_fields.rb +2 -2
  4. data/lib/volcano/client.rb +3 -2
  5. data/lib/volcano/durable.rb +7 -34
  6. data/lib/volcano/durable_approval_models.rb +171 -0
  7. data/lib/volcano/durable_approval_responses.rb +222 -0
  8. data/lib/volcano/durable_approvals.rb +143 -0
  9. data/lib/volcano/durable_arguments.rb +59 -0
  10. data/lib/volcano/durable_models.rb +0 -4
  11. data/lib/volcano/errors.rb +5 -0
  12. data/lib/volcano/generated/lib/volcano-generated/api/anon_keys_api.rb +8 -8
  13. data/lib/volcano/generated/lib/volcano-generated/api/auth_admin_api.rb +17 -17
  14. data/lib/volcano/generated/lib/volcano-generated/api/auth_configuration_api.rb +26 -26
  15. data/lib/volcano/generated/lib/volcano-generated/api/authentication_api.rb +4 -4
  16. data/lib/volcano/generated/lib/volcano-generated/api/database_backups_api.rb +11 -11
  17. data/lib/volcano/generated/lib/volcano-generated/api/database_branches_api.rb +9 -9
  18. data/lib/volcano/generated/lib/volcano-generated/api/database_queries_api.rb +4 -4
  19. data/lib/volcano/generated/lib/volcano-generated/api/databases_api.rb +18 -18
  20. data/lib/volcano/generated/lib/volcano-generated/api/durable_functions_api.rb +559 -8
  21. data/lib/volcano/generated/lib/volcano-generated/api/frontends_api.rb +337 -21
  22. data/lib/volcano/generated/lib/volcano-generated/api/functions_api.rb +33 -27
  23. data/lib/volcano/generated/lib/volcano-generated/api/git_connections_api.rb +19 -11
  24. data/lib/volcano/generated/lib/volcano-generated/api/locks_api.rb +2 -2
  25. data/lib/volcano/generated/lib/volcano-generated/api/logs_api.rb +11 -11
  26. data/lib/volcano/generated/lib/volcano-generated/api/o_auth_authentication_api.rb +2 -2
  27. data/lib/volcano/generated/lib/volcano-generated/api/o_auth_configuration_api.rb +8 -8
  28. data/lib/volcano/generated/lib/volcano-generated/api/project_access_tokens_api.rb +479 -0
  29. data/lib/volcano/generated/lib/volcano-generated/api/project_imports_api.rb +10 -2
  30. data/lib/volcano/generated/lib/volcano-generated/api/projects_api.rb +110 -30
  31. data/lib/volcano/generated/lib/volcano-generated/api/realtime_api.rb +5 -5
  32. data/lib/volcano/generated/lib/volcano-generated/api/sandboxes_api.rb +1792 -0
  33. data/lib/volcano/generated/lib/volcano-generated/api/service_keys_api.rb +9 -9
  34. data/lib/volcano/generated/lib/volcano-generated/api/storage_admin_api.rb +4 -4
  35. data/lib/volcano/generated/lib/volcano-generated/api/storage_buckets_api.rb +7 -7
  36. data/lib/volcano/generated/lib/volcano-generated/api/storage_objects_api.rb +2 -2
  37. data/lib/volcano/generated/lib/volcano-generated/api/storage_policies_api.rb +5 -5
  38. data/lib/volcano/generated/lib/volcano-generated/api/system_api.rb +310 -2
  39. data/lib/volcano/generated/lib/volcano-generated/api/variables_api.rb +13 -13
  40. data/lib/volcano/generated/lib/volcano-generated/api/verified_domains_api.rb +214 -0
  41. data/lib/volcano/generated/lib/volcano-generated/api_client.rb +2 -2
  42. data/lib/volcano/generated/lib/volcano-generated/api_error.rb +2 -2
  43. data/lib/volcano/generated/lib/volcano-generated/api_model_base.rb +2 -2
  44. data/lib/volcano/generated/lib/volcano-generated/configuration.rb +11 -3
  45. data/lib/volcano/generated/lib/volcano-generated/models/anon_key.rb +2 -2
  46. data/lib/volcano/generated/lib/volcano-generated/models/auth_config.rb +2 -2
  47. data/lib/volcano/generated/lib/volcano-generated/models/auth_confirm_email200_response.rb +2 -2
  48. data/lib/volcano/generated/lib/volcano-generated/models/auth_confirm_email_change200_response.rb +2 -2
  49. data/lib/volcano/generated/lib/volcano-generated/models/auth_confirm_email_change_request.rb +2 -2
  50. data/lib/volcano/generated/lib/volcano-generated/models/auth_confirm_email_request.rb +2 -2
  51. data/lib/volcano/generated/lib/volcano-generated/models/auth_convert_anonymous200_response.rb +2 -2
  52. data/lib/volcano/generated/lib/volcano-generated/models/auth_device_authorize_request.rb +2 -2
  53. data/lib/volcano/generated/lib/volcano-generated/models/auth_device_token_request.rb +2 -2
  54. data/lib/volcano/generated/lib/volcano-generated/models/auth_device_verify200_response.rb +2 -2
  55. data/lib/volcano/generated/lib/volcano-generated/models/auth_device_verify_request.rb +2 -2
  56. data/lib/volcano/generated/lib/volcano-generated/models/auth_forgot_password200_response.rb +2 -2
  57. data/lib/volcano/generated/lib/volcano-generated/models/auth_forgot_password_request.rb +2 -2
  58. data/lib/volcano/generated/lib/volcano-generated/models/auth_get_my_sessions200_response.rb +2 -2
  59. data/lib/volcano/generated/lib/volcano-generated/models/auth_hosted_page.rb +2 -2
  60. data/lib/volcano/generated/lib/volcano-generated/models/auth_hosted_page_defaults.rb +2 -2
  61. data/lib/volcano/generated/lib/volcano-generated/models/auth_hosted_page_response.rb +2 -2
  62. data/lib/volcano/generated/lib/volcano-generated/models/auth_hosted_page_runtime.rb +2 -2
  63. data/lib/volcano/generated/lib/volcano-generated/models/auth_identities_response.rb +2 -2
  64. data/lib/volcano/generated/lib/volcano-generated/models/auth_identity.rb +2 -2
  65. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_interval.rb +2 -2
  66. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_response.rb +2 -2
  67. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_series_point.rb +67 -4
  68. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_summary.rb +77 -5
  69. data/lib/volcano/generated/lib/volcano-generated/models/auth_insights_window.rb +2 -2
  70. data/lib/volcano/generated/lib/volcano-generated/models/auth_link_o_auth_provider200_response.rb +2 -2
  71. data/lib/volcano/generated/lib/volcano-generated/models/auth_list_o_auth_providers200_response.rb +2 -2
  72. data/lib/volcano/generated/lib/volcano-generated/models/auth_list_o_auth_providers200_response_providers_inner.rb +2 -2
  73. data/lib/volcano/generated/lib/volcano-generated/models/auth_method_summary.rb +2 -2
  74. data/lib/volcano/generated/lib/volcano-generated/models/auth_methods_response.rb +2 -2
  75. data/lib/volcano/generated/lib/volcano-generated/models/auth_o_auth_exchange_request.rb +2 -2
  76. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_appearance_defaults.rb +2 -2
  77. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_appearance_options.rb +2 -2
  78. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_appearance_response.rb +2 -2
  79. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_density.rb +2 -2
  80. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_font.rb +2 -2
  81. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_layout.rb +2 -2
  82. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_radius.rb +2 -2
  83. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_scale.rb +2 -2
  84. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_theme.rb +2 -2
  85. data/lib/volcano/generated/lib/volcano-generated/models/auth_page_theme_colors.rb +2 -2
  86. data/lib/volcano/generated/lib/volcano-generated/models/auth_password_policy.rb +2 -2
  87. data/lib/volcano/generated/lib/volcano-generated/models/auth_platform_exchange_request.rb +2 -2
  88. data/lib/volcano/generated/lib/volcano-generated/models/auth_refresh_request.rb +2 -2
  89. data/lib/volcano/generated/lib/volcano-generated/models/auth_request_email_change200_response.rb +2 -2
  90. data/lib/volcano/generated/lib/volcano-generated/models/auth_request_email_change_request.rb +2 -2
  91. data/lib/volcano/generated/lib/volcano-generated/models/auth_reset_password200_response.rb +2 -2
  92. data/lib/volcano/generated/lib/volcano-generated/models/auth_reset_password_request.rb +2 -2
  93. data/lib/volcano/generated/lib/volcano-generated/models/auth_session.rb +2 -2
  94. data/lib/volcano/generated/lib/volcano-generated/models/auth_signin_request.rb +2 -2
  95. data/lib/volcano/generated/lib/volcano-generated/models/auth_signup_anonymous_request.rb +2 -2
  96. data/lib/volcano/generated/lib/volcano-generated/models/auth_signup_request.rb +2 -2
  97. data/lib/volcano/generated/lib/volcano-generated/models/auth_signup_response.rb +2 -2
  98. data/lib/volcano/generated/lib/volcano-generated/models/auth_token_response.rb +2 -2
  99. data/lib/volcano/generated/lib/volcano-generated/models/auth_update_user_request.rb +2 -2
  100. data/lib/volcano/generated/lib/volcano-generated/models/auth_user.rb +2 -2
  101. data/lib/volcano/generated/lib/volcano-generated/models/ban_auth_user_request.rb +2 -2
  102. data/lib/volcano/generated/lib/volcano-generated/models/ban_user_response.rb +2 -2
  103. data/lib/volcano/generated/lib/volcano-generated/models/batch_function_deploy_failure.rb +2 -2
  104. data/lib/volcano/generated/lib/volcano-generated/models/batch_function_deploy_response.rb +2 -2
  105. data/lib/volcano/generated/lib/volcano-generated/models/byoc_project_config_frontend_custom_domain_tls_config.rb +270 -0
  106. data/lib/volcano/generated/lib/volcano-generated/models/byoc_project_config_frontend_custom_domain_tls_config_not.rb +102 -0
  107. data/lib/volcano/generated/lib/volcano-generated/models/call_mcp200_response.rb +220 -0
  108. data/lib/volcano/generated/lib/volcano-generated/models/call_mcp200_response_error.rb +190 -0
  109. data/lib/volcano/generated/lib/volcano-generated/models/call_mcp200_response_id.rb +105 -0
  110. data/lib/volcano/generated/lib/volcano-generated/models/call_mcp_request.rb +236 -0
  111. data/lib/volcano/generated/lib/volcano-generated/models/call_mcp_request_id.rb +105 -0
  112. data/lib/volcano/generated/lib/volcano-generated/models/call_o_auth_provider_api200_response.rb +2 -2
  113. data/lib/volcano/generated/lib/volcano-generated/models/call_o_auth_provider_api_request.rb +2 -2
  114. data/lib/volcano/generated/lib/volcano-generated/models/complete_upload_session_response.rb +2 -2
  115. data/lib/volcano/generated/lib/volcano-generated/models/configure_auth_methods_request.rb +2 -2
  116. data/lib/volcano/generated/lib/volcano-generated/models/configure_auth_methods_request_oauth_providers_inner.rb +2 -2
  117. data/lib/volcano/generated/lib/volcano-generated/models/connect_project_git_request.rb +2 -2
  118. data/lib/volcano/generated/lib/volcano-generated/models/create_anon_key_request.rb +2 -2
  119. data/lib/volcano/generated/lib/volcano-generated/models/create_database_backup_request.rb +2 -2
  120. data/lib/volcano/generated/lib/volcano-generated/models/create_database_branch_request.rb +2 -2
  121. data/lib/volcano/generated/lib/volcano-generated/models/create_database_request.rb +6 -6
  122. data/lib/volcano/generated/lib/volcano-generated/models/create_database_restore_request.rb +2 -2
  123. data/lib/volcano/generated/lib/volcano-generated/models/create_email_template_request.rb +2 -2
  124. data/lib/volcano/generated/lib/volcano-generated/models/create_frontend_custom_domain_request.rb +12 -3
  125. data/lib/volcano/generated/lib/volcano-generated/models/create_frontend_function_route_request.rb +230 -0
  126. data/lib/volcano/generated/lib/volcano-generated/models/create_function_scheduler_request.rb +2 -2
  127. data/lib/volcano/generated/lib/volcano-generated/models/create_o_auth_config_request.rb +2 -2
  128. data/lib/volcano/generated/lib/volcano-generated/models/create_project_access_token_request.rb +241 -0
  129. data/lib/volcano/generated/lib/volcano-generated/models/create_project_request.rb +57 -3
  130. data/lib/volcano/generated/lib/volcano-generated/models/create_sandbox_session_request.rb +292 -0
  131. data/lib/volcano/generated/lib/volcano-generated/models/create_sandbox_template_request.rb +247 -0
  132. data/lib/volcano/generated/lib/volcano-generated/models/create_service_key_request.rb +2 -2
  133. data/lib/volcano/generated/lib/volcano-generated/models/create_storage_bucket_request.rb +2 -2
  134. data/lib/volcano/generated/lib/volcano-generated/models/create_storage_policy_request.rb +2 -2
  135. data/lib/volcano/generated/lib/volcano-generated/models/create_upload_session_request.rb +2 -2
  136. data/lib/volcano/generated/lib/volcano-generated/models/create_upload_session_response.rb +2 -2
  137. data/lib/volcano/generated/lib/volcano-generated/models/create_variable_request.rb +3 -2
  138. data/lib/volcano/generated/lib/volcano-generated/models/created_project_access_token.rb +459 -0
  139. data/lib/volcano/generated/lib/volcano-generated/models/database.rb +2 -2
  140. data/lib/volcano/generated/lib/volcano-generated/models/database_backup.rb +2 -2
  141. data/lib/volcano/generated/lib/volcano-generated/models/database_backup_list.rb +2 -2
  142. data/lib/volcano/generated/lib/volcano-generated/models/database_backup_schedule.rb +2 -2
  143. data/lib/volcano/generated/lib/volcano-generated/models/database_backup_schedule_entry.rb +2 -2
  144. data/lib/volcano/generated/lib/volcano-generated/models/database_branch.rb +2 -2
  145. data/lib/volcano/generated/lib/volcano-generated/models/database_branch_list.rb +2 -2
  146. data/lib/volcano/generated/lib/volcano-generated/models/database_branch_storage.rb +2 -2
  147. data/lib/volcano/generated/lib/volcano-generated/models/database_delete_request.rb +2 -2
  148. data/lib/volcano/generated/lib/volcano-generated/models/database_insert_request.rb +3 -3
  149. data/lib/volcano/generated/lib/volcano-generated/models/database_query_filter.rb +2 -2
  150. data/lib/volcano/generated/lib/volcano-generated/models/database_query_filter_value.rb +3 -3
  151. data/lib/volcano/generated/lib/volcano-generated/models/database_query_filter_value_one_of_inner.rb +3 -3
  152. data/lib/volcano/generated/lib/volcano-generated/models/database_query_order.rb +2 -2
  153. data/lib/volcano/generated/lib/volcano-generated/models/database_query_performance_database.rb +2 -2
  154. data/lib/volcano/generated/lib/volcano-generated/models/database_query_performance_item.rb +4 -4
  155. data/lib/volcano/generated/lib/volcano-generated/models/database_query_performance_response.rb +2 -2
  156. data/lib/volcano/generated/lib/volcano-generated/models/database_query_result.rb +2 -2
  157. data/lib/volcano/generated/lib/volcano-generated/models/database_restore.rb +2 -2
  158. data/lib/volcano/generated/lib/volcano-generated/models/database_restore_list.rb +2 -2
  159. data/lib/volcano/generated/lib/volcano-generated/models/database_restore_window.rb +2 -2
  160. data/lib/volcano/generated/lib/volcano-generated/models/database_select_request.rb +2 -2
  161. data/lib/volcano/generated/lib/volcano-generated/models/database_stats.rb +2 -2
  162. data/lib/volcano/generated/lib/volcano-generated/models/database_update_request.rb +3 -3
  163. data/lib/volcano/generated/lib/volcano-generated/models/delete_database202_response.rb +2 -2
  164. data/lib/volcano/generated/lib/volcano-generated/models/delete_database_backup200_response.rb +2 -2
  165. data/lib/volcano/generated/lib/volcano-generated/models/delete_database_branch202_response.rb +2 -2
  166. data/lib/volcano/generated/lib/volcano-generated/models/deployment_phase.rb +2 -2
  167. data/lib/volcano/generated/lib/volcano-generated/models/deployment_progress.rb +2 -2
  168. data/lib/volcano/generated/lib/volcano-generated/models/deployment_reference.rb +2 -2
  169. data/lib/volcano/generated/lib/volcano-generated/models/device_authorization_response.rb +2 -2
  170. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval.rb +406 -0
  171. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_counts.rb +295 -0
  172. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_daily_counts.rb +190 -0
  173. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_decider.rb +191 -0
  174. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_decision.rb +203 -0
  175. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_decision_request.rb +167 -0
  176. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_execution.rb +211 -0
  177. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_function.rb +177 -0
  178. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_function_counts.rb +190 -0
  179. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_registration.rb +225 -0
  180. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_stats.rb +339 -0
  181. data/lib/volcano/generated/lib/volcano-generated/models/durable_approval_status.rb +43 -0
  182. data/lib/volcano/generated/lib/volcano-generated/models/durable_execution.rb +2 -2
  183. data/lib/volcano/generated/lib/volcano-generated/models/durable_execution_error.rb +2 -2
  184. data/lib/volcano/generated/lib/volcano-generated/models/durable_execution_invocation.rb +191 -0
  185. data/lib/volcano/generated/lib/volcano-generated/models/durable_execution_operation.rb +372 -0
  186. data/lib/volcano/generated/lib/volcano-generated/models/durable_execution_operation_attempt.rb +271 -0
  187. data/lib/volcano/generated/lib/volcano-generated/models/durable_execution_operation_list.rb +234 -0
  188. data/lib/volcano/generated/lib/volcano-generated/models/durable_execution_status.rb +2 -2
  189. data/lib/volcano/generated/lib/volcano-generated/models/durable_function.rb +31 -4
  190. data/lib/volcano/generated/lib/volcano-generated/models/durable_function_config.rb +2 -2
  191. data/lib/volcano/generated/lib/volcano-generated/models/email_template.rb +2 -2
  192. data/lib/volcano/generated/lib/volcano-generated/models/error.rb +2 -2
  193. data/lib/volcano/generated/lib/volcano-generated/models/export_project_source_request.rb +2 -2
  194. data/lib/volcano/generated/lib/volcano-generated/models/frontend.rb +85 -3
  195. data/lib/volcano/generated/lib/volcano-generated/models/frontend_custom_domain_conflict_error.rb +191 -0
  196. data/lib/volcano/generated/lib/volcano-generated/models/frontend_custom_domain_response.rb +27 -5
  197. data/lib/volcano/generated/lib/volcano-generated/models/frontend_custom_domain_tls_config.rb +42 -18
  198. data/lib/volcano/generated/lib/volcano-generated/models/frontend_custom_domain_tls_config_not.rb +103 -0
  199. data/lib/volcano/generated/lib/volcano-generated/models/frontend_custom_domain_tls_config_not_any_of.rb +188 -0
  200. data/lib/volcano/generated/lib/volcano-generated/models/frontend_custom_domain_tls_config_not_any_of1.rb +188 -0
  201. data/lib/volcano/generated/lib/volcano-generated/models/frontend_deployment.rb +24 -68
  202. data/lib/volcano/generated/lib/volcano-generated/models/frontend_domain_routing_record.rb +2 -2
  203. data/lib/volcano/generated/lib/volcano-generated/models/frontend_domain_verification_record.rb +3 -2
  204. data/lib/volcano/generated/lib/volcano-generated/models/frontend_function_route.rb +375 -0
  205. data/lib/volcano/generated/lib/volcano-generated/models/frontend_function_route_list.rb +166 -0
  206. data/lib/volcano/generated/lib/volcano-generated/models/frontend_usage_daily_entry.rb +2 -2
  207. data/lib/volcano/generated/lib/volcano-generated/models/frontend_usage_data.rb +2 -2
  208. data/lib/volcano/generated/lib/volcano-generated/models/frontend_usage_history_response.rb +2 -2
  209. data/lib/volcano/generated/lib/volcano-generated/models/function.rb +31 -14
  210. data/lib/volcano/generated/lib/volcano-generated/models/function_deployment.rb +24 -50
  211. data/lib/volcano/generated/lib/volcano-generated/models/function_http_auth_mode.rb +2 -2
  212. data/lib/volcano/generated/lib/volcano-generated/models/function_invocation_mode.rb +2 -2
  213. data/lib/volcano/generated/lib/volcano-generated/models/function_invocation_request.rb +2 -2
  214. data/lib/volcano/generated/lib/volcano-generated/models/function_kind.rb +2 -2
  215. data/lib/volcano/generated/lib/volcano-generated/models/function_kind_filter.rb +40 -0
  216. data/lib/volcano/generated/lib/volcano-generated/models/function_region.rb +2 -2
  217. data/lib/volcano/generated/lib/volcano-generated/models/function_runtime_deployment.rb +2 -2
  218. data/lib/volcano/generated/lib/volcano-generated/models/function_runtime_option.rb +30 -3
  219. data/lib/volcano/generated/lib/volcano-generated/models/function_runtimes_response.rb +2 -2
  220. data/lib/volcano/generated/lib/volcano-generated/models/function_scheduler.rb +2 -2
  221. data/lib/volcano/generated/lib/volcano-generated/models/function_scheduler_list_response.rb +2 -2
  222. data/lib/volcano/generated/lib/volcano-generated/models/function_visibility.rb +41 -0
  223. data/lib/volcano/generated/lib/volcano-generated/models/get_auth_methods200_response.rb +2 -2
  224. data/lib/volcano/generated/lib/volcano-generated/models/get_auth_methods200_response_email_password.rb +2 -2
  225. data/lib/volcano/generated/lib/volcano-generated/models/get_auth_methods200_response_oauth_providers_inner.rb +2 -2
  226. data/lib/volcano/generated/lib/volcano-generated/models/git_connect_start_response.rb +2 -2
  227. data/lib/volcano/generated/lib/volcano-generated/models/git_connection.rb +2 -2
  228. data/lib/volcano/generated/lib/volcano-generated/models/git_connections_response.rb +2 -2
  229. data/lib/volcano/generated/lib/volcano-generated/models/git_installation.rb +2 -2
  230. data/lib/volcano/generated/lib/volcano-generated/models/git_installations_response.rb +2 -2
  231. data/lib/volcano/generated/lib/volcano-generated/models/git_repositories_response.rb +2 -2
  232. data/lib/volcano/generated/lib/volcano-generated/models/git_repository.rb +2 -2
  233. data/lib/volcano/generated/lib/volcano-generated/models/hosted_auth_page_type.rb +2 -2
  234. data/lib/volcano/generated/lib/volcano-generated/models/hosted_login_email_check_request.rb +2 -2
  235. data/lib/volcano/generated/lib/volcano-generated/models/hosted_login_email_check_response.rb +2 -2
  236. data/lib/volcano/generated/lib/volcano-generated/models/hosted_login_options_response.rb +2 -2
  237. data/lib/volcano/generated/lib/volcano-generated/models/hosted_renderable_page_type.rb +2 -2
  238. data/lib/volcano/generated/lib/volcano-generated/models/import_connect_start_response.rb +2 -2
  239. data/lib/volcano/generated/lib/volcano-generated/models/import_connection.rb +2 -2
  240. data/lib/volcano/generated/lib/volcano-generated/models/import_connections_response.rb +2 -2
  241. data/lib/volcano/generated/lib/volcano-generated/models/import_provider.rb +2 -2
  242. data/lib/volcano/generated/lib/volcano-generated/models/import_source.rb +2 -2
  243. data/lib/volcano/generated/lib/volcano-generated/models/import_sources_response.rb +2 -2
  244. data/lib/volcano/generated/lib/volcano-generated/models/list_anon_keys200_response.rb +2 -2
  245. data/lib/volcano/generated/lib/volcano-generated/models/list_available_o_auth_providers200_response.rb +2 -2
  246. data/lib/volcano/generated/lib/volcano-generated/models/list_available_o_auth_providers200_response_providers_inner.rb +2 -2
  247. data/lib/volcano/generated/lib/volcano-generated/models/list_database_regions200_response_inner.rb +2 -2
  248. data/lib/volcano/generated/lib/volcano-generated/models/list_email_templates200_response.rb +2 -2
  249. data/lib/volcano/generated/lib/volcano-generated/models/list_o_auth_configs200_response.rb +2 -2
  250. data/lib/volcano/generated/lib/volcano-generated/models/list_postgres_versions200_response_inner.rb +14 -4
  251. data/lib/volcano/generated/lib/volcano-generated/models/list_storage_buckets200_response.rb +3 -3
  252. data/lib/volcano/generated/lib/volcano-generated/models/list_storage_objects_admin200_response.rb +2 -2
  253. data/lib/volcano/generated/lib/volcano-generated/models/live_log_level.rb +2 -2
  254. data/lib/volcano/generated/lib/volcano-generated/models/log_activity_bucket.rb +5 -5
  255. data/lib/volcano/generated/lib/volcano-generated/models/log_activity_bucket_counts.rb +2 -2
  256. data/lib/volcano/generated/lib/volcano-generated/models/log_activity_request.rb +5 -5
  257. data/lib/volcano/generated/lib/volcano-generated/models/log_activity_response.rb +2 -2
  258. data/lib/volcano/generated/lib/volcano-generated/models/log_database_request_resource.rb +2 -2
  259. data/lib/volcano/generated/lib/volcano-generated/models/log_deployment.rb +2 -2
  260. data/lib/volcano/generated/lib/volcano-generated/models/log_deployment_request_selector.rb +2 -2
  261. data/lib/volcano/generated/lib/volcano-generated/models/log_event.rb +2 -2
  262. data/lib/volcano/generated/lib/volcano-generated/models/log_event_body.rb +3 -3
  263. data/lib/volcano/generated/lib/volcano-generated/models/log_frontend_request_resource.rb +2 -2
  264. data/lib/volcano/generated/lib/volcano-generated/models/log_function_request_resource.rb +13 -3
  265. data/lib/volcano/generated/lib/volcano-generated/models/log_request_resource.rb +3 -3
  266. data/lib/volcano/generated/lib/volcano-generated/models/log_resource.rb +2 -2
  267. data/lib/volcano/generated/lib/volcano-generated/models/log_search_event.rb +2 -2
  268. data/lib/volcano/generated/lib/volcano-generated/models/log_search_request.rb +2 -2
  269. data/lib/volcano/generated/lib/volcano-generated/models/log_search_response.rb +4 -4
  270. data/lib/volcano/generated/lib/volcano-generated/models/log_stream_request.rb +2 -2
  271. data/lib/volcano/generated/lib/volcano-generated/models/managed_project_config_frontend_custom_domain_tls_config.rb +189 -0
  272. data/lib/volcano/generated/lib/volcano-generated/models/metric_usage_data.rb +3 -3
  273. data/lib/volcano/generated/lib/volcano-generated/models/o_auth_config.rb +2 -2
  274. data/lib/volcano/generated/lib/volcano-generated/models/o_auth_error_response.rb +2 -2
  275. data/lib/volcano/generated/lib/volcano-generated/models/paginated_auth_users.rb +2 -2
  276. data/lib/volcano/generated/lib/volcano-generated/models/paginated_databases.rb +2 -2
  277. data/lib/volcano/generated/lib/volcano-generated/models/paginated_durable_approvals.rb +274 -0
  278. data/lib/volcano/generated/lib/volcano-generated/models/paginated_durable_executions.rb +2 -2
  279. data/lib/volcano/generated/lib/volcano-generated/models/paginated_durable_functions.rb +2 -2
  280. data/lib/volcano/generated/lib/volcano-generated/models/paginated_frontend_deployments.rb +2 -2
  281. data/lib/volcano/generated/lib/volcano-generated/models/paginated_frontends.rb +2 -2
  282. data/lib/volcano/generated/lib/volcano-generated/models/paginated_function_deployments.rb +2 -2
  283. data/lib/volcano/generated/lib/volcano-generated/models/paginated_functions.rb +2 -2
  284. data/lib/volcano/generated/lib/volcano-generated/models/paginated_project_access_tokens.rb +279 -0
  285. data/lib/volcano/generated/lib/volcano-generated/models/paginated_project_custom_domains.rb +2 -2
  286. data/lib/volcano/generated/lib/volcano-generated/models/paginated_project_deployments.rb +2 -2
  287. data/lib/volcano/generated/lib/volcano-generated/models/paginated_projects.rb +2 -2
  288. data/lib/volcano/generated/lib/volcano-generated/models/paginated_service_keys.rb +2 -2
  289. data/lib/volcano/generated/lib/volcano-generated/models/paginated_storage_buckets.rb +2 -2
  290. data/lib/volcano/generated/lib/volcano-generated/models/paginated_variables.rb +2 -2
  291. data/lib/volcano/generated/lib/volcano-generated/models/platform_exchange_response.rb +2 -2
  292. data/lib/volcano/generated/lib/volcano-generated/models/preview_auth_page_request.rb +2 -2
  293. data/lib/volcano/generated/lib/volcano-generated/models/preview_auth_page_response.rb +2 -2
  294. data/lib/volcano/generated/lib/volcano-generated/models/project.rb +13 -13
  295. data/lib/volcano/generated/lib/volcano-generated/models/project_access_token.rb +426 -0
  296. data/lib/volcano/generated/lib/volcano-generated/models/project_access_token_scope.rb +40 -0
  297. data/lib/volcano/generated/lib/volcano-generated/models/project_access_token_usage.rb +299 -0
  298. data/lib/volcano/generated/lib/volcano-generated/models/project_access_token_usage_daily_entry.rb +191 -0
  299. data/lib/volcano/generated/lib/volcano-generated/models/project_config.rb +40 -6
  300. data/lib/volcano/generated/lib/volcano-generated/models/project_config_apply_result.rb +2 -2
  301. data/lib/volcano/generated/lib/volcano-generated/models/project_config_apply_result_entry.rb +2 -2
  302. data/lib/volcano/generated/lib/volcano-generated/models/project_config_apply_summary.rb +2 -2
  303. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth.rb +2 -2
  304. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_cors.rb +2 -2
  305. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email.rb +2 -2
  306. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email_from.rb +2 -2
  307. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email_password_provider.rb +2 -2
  308. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email_smtp.rb +2 -2
  309. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_email_verification.rb +2 -2
  310. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_managed_pages.rb +2 -2
  311. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_page_appearance.rb +2 -2
  312. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_page_layouts.rb +2 -2
  313. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_password.rb +2 -2
  314. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_password_reset.rb +2 -2
  315. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_providers.rb +2 -2
  316. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_rate_limits.rb +2 -2
  317. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_redirects.rb +2 -2
  318. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_sessions.rb +2 -2
  319. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_signup.rb +2 -2
  320. data/lib/volcano/generated/lib/volcano-generated/models/project_config_auth_tokens.rb +2 -2
  321. data/lib/volcano/generated/lib/volcano-generated/models/project_config_bucket.rb +2 -2
  322. data/lib/volcano/generated/lib/volcano-generated/models/project_config_bucket_policy.rb +2 -2
  323. data/lib/volcano/generated/lib/volcano-generated/models/project_config_custom_domain.rb +14 -5
  324. data/lib/volcano/generated/lib/volcano-generated/models/project_config_database.rb +6 -6
  325. data/lib/volcano/generated/lib/volcano-generated/models/project_config_email_template.rb +2 -2
  326. data/lib/volcano/generated/lib/volcano-generated/models/project_config_email_templates.rb +2 -2
  327. data/lib/volcano/generated/lib/volcano-generated/models/project_config_frontend.rb +103 -6
  328. data/lib/volcano/generated/lib/volcano-generated/models/project_config_frontend_custom_domain_tls_config.rb +105 -0
  329. data/lib/volcano/generated/lib/volcano-generated/models/project_config_frontend_function_route.rb +240 -0
  330. data/lib/volcano/generated/lib/volcano-generated/models/project_config_function.rb +13 -4
  331. data/lib/volcano/generated/lib/volcano-generated/models/project_config_hosted_page.rb +2 -2
  332. data/lib/volcano/generated/lib/volcano-generated/models/project_config_hosted_pages.rb +2 -2
  333. data/lib/volcano/generated/lib/volcano-generated/models/project_config_missing_resource.rb +4 -4
  334. data/lib/volcano/generated/lib/volcano-generated/models/project_config_o_auth_provider.rb +2 -2
  335. data/lib/volcano/generated/lib/volcano-generated/models/project_config_project.rb +2 -2
  336. data/lib/volcano/generated/lib/volcano-generated/models/project_config_realtime.rb +2 -2
  337. data/lib/volcano/generated/lib/volcano-generated/models/project_config_sandbox.rb +327 -0
  338. data/lib/volcano/generated/lib/volcano-generated/models/project_config_scheduler.rb +2 -2
  339. data/lib/volcano/generated/lib/volcano-generated/models/project_config_skipped_resource.rb +4 -4
  340. data/lib/volcano/generated/lib/volcano-generated/models/project_config_validation_error.rb +2 -2
  341. data/lib/volcano/generated/lib/volcano-generated/models/project_config_validation_error_response.rb +2 -2
  342. data/lib/volcano/generated/lib/volcano-generated/models/project_config_variable.rb +3 -2
  343. data/lib/volcano/generated/lib/volcano-generated/models/project_deployment.rb +3 -12
  344. data/lib/volcano/generated/lib/volcano-generated/models/project_deployment_resource.rb +2 -2
  345. data/lib/volcano/generated/lib/volcano-generated/models/project_deployment_summary.rb +3 -3
  346. data/lib/volcano/generated/lib/volcano-generated/models/project_frontend_custom_domain.rb +27 -5
  347. data/lib/volcano/generated/lib/volcano-generated/models/project_frontend_custom_domain_all_of_frontend.rb +2 -2
  348. data/lib/volcano/generated/lib/volcano-generated/models/project_git_connection.rb +2 -2
  349. data/lib/volcano/generated/lib/volcano-generated/models/project_git_connection_summary.rb +2 -2
  350. data/lib/volcano/generated/lib/volcano-generated/models/project_git_deploy_settings.rb +2 -2
  351. data/lib/volcano/generated/lib/volcano-generated/models/project_health_category.rb +2 -2
  352. data/lib/volcano/generated/lib/volcano-generated/models/project_health_check.rb +2 -2
  353. data/lib/volcano/generated/lib/volcano-generated/models/project_health_data_status.rb +2 -2
  354. data/lib/volcano/generated/lib/volcano-generated/models/project_health_evidence.rb +2 -2
  355. data/lib/volcano/generated/lib/volcano-generated/models/project_health_resource.rb +2 -2
  356. data/lib/volcano/generated/lib/volcano-generated/models/project_health_response.rb +2 -2
  357. data/lib/volcano/generated/lib/volcano-generated/models/project_health_scope.rb +2 -2
  358. data/lib/volcano/generated/lib/volcano-generated/models/project_health_status.rb +2 -2
  359. data/lib/volcano/generated/lib/volcano-generated/models/project_health_summary.rb +2 -2
  360. data/lib/volcano/generated/lib/volcano-generated/models/project_import_action.rb +2 -2
  361. data/lib/volcano/generated/lib/volcano-generated/models/project_import_action_code.rb +2 -2
  362. data/lib/volcano/generated/lib/volcano-generated/models/project_import_destination.rb +2 -2
  363. data/lib/volcano/generated/lib/volcano-generated/models/project_import_destination_mode.rb +2 -2
  364. data/lib/volcano/generated/lib/volcano-generated/models/project_import_disposition.rb +2 -2
  365. data/lib/volcano/generated/lib/volcano-generated/models/project_import_finding.rb +2 -2
  366. data/lib/volcano/generated/lib/volcano-generated/models/project_import_impact.rb +2 -2
  367. data/lib/volcano/generated/lib/volcano-generated/models/project_import_preflight_request.rb +2 -2
  368. data/lib/volcano/generated/lib/volcano-generated/models/project_import_readiness.rb +2 -2
  369. data/lib/volcano/generated/lib/volcano-generated/models/project_import_report.rb +2 -2
  370. data/lib/volcano/generated/lib/volcano-generated/models/project_import_resource.rb +2 -2
  371. data/lib/volcano/generated/lib/volcano-generated/models/project_import_resource_kind.rb +2 -2
  372. data/lib/volcano/generated/lib/volcano-generated/models/project_import_run.rb +2 -2
  373. data/lib/volcano/generated/lib/volcano-generated/models/project_import_run_status.rb +2 -2
  374. data/lib/volcano/generated/lib/volcano-generated/models/project_import_start_request.rb +2 -2
  375. data/lib/volcano/generated/lib/volcano-generated/models/project_import_summary.rb +2 -2
  376. data/lib/volcano/generated/lib/volcano-generated/models/project_import_target.rb +2 -2
  377. data/lib/volcano/generated/lib/volcano-generated/models/project_lock_lease.rb +2 -2
  378. data/lib/volcano/generated/lib/volcano-generated/models/project_lock_lease_request.rb +2 -2
  379. data/lib/volcano/generated/lib/volcano-generated/models/project_lock_state.rb +2 -2
  380. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_data_status.rb +2 -2
  381. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_dimensions.rb +2 -2
  382. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_group_by.rb +2 -2
  383. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_metric.rb +2 -2
  384. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_query.rb +2 -2
  385. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_query_request.rb +2 -2
  386. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_query_response.rb +2 -2
  387. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_query_time_range.rb +2 -2
  388. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_result.rb +2 -2
  389. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_unit.rb +2 -2
  390. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_value.rb +2 -2
  391. data/lib/volcano/generated/lib/volcano-generated/models/project_metrics_window.rb +2 -2
  392. data/lib/volcano/generated/lib/volcano-generated/models/project_source_export.rb +2 -2
  393. data/lib/volcano/generated/lib/volcano-generated/models/project_source_export_omission.rb +2 -2
  394. data/lib/volcano/generated/lib/volcano-generated/models/project_source_export_skip.rb +2 -2
  395. data/lib/volcano/generated/lib/volcano-generated/models/project_source_export_state.rb +2 -2
  396. data/lib/volcano/generated/lib/volcano-generated/models/project_template_installation.rb +217 -0
  397. data/lib/volcano/generated/lib/volcano-generated/models/project_usage_response.rb +2 -2
  398. data/lib/volcano/generated/lib/volcano-generated/models/publish_sandbox_preset_request.rb +268 -0
  399. data/lib/volcano/generated/lib/volcano-generated/models/realtime_config.rb +2 -2
  400. data/lib/volcano/generated/lib/volcano-generated/models/realtime_plan_limits.rb +2 -2
  401. data/lib/volcano/generated/lib/volcano-generated/models/realtime_stats.rb +2 -2
  402. data/lib/volcano/generated/lib/volcano-generated/models/refresh_o_auth_provider_token200_response.rb +2 -2
  403. data/lib/volcano/generated/lib/volcano-generated/models/replace_frontend_shared_variables_request.rb +237 -0
  404. data/lib/volcano/generated/lib/volcano-generated/models/replace_shared_variables_request.rb +2 -2
  405. data/lib/volcano/generated/lib/volcano-generated/models/request_durable_approval_request.rb +355 -0
  406. data/lib/volcano/generated/lib/volcano-generated/models/reset_database_password200_response.rb +2 -2
  407. data/lib/volcano/generated/lib/volcano-generated/models/resolve_function_response.rb +13 -3
  408. data/lib/volcano/generated/lib/volcano-generated/models/resource_reference.rb +2 -2
  409. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_access.rb +216 -0
  410. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_access_request.rb +221 -0
  411. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_build_log_page.rb +176 -0
  412. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_build_log_page_data_inner.rb +190 -0
  413. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_capacity.rb +199 -0
  414. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_capacity_list.rb +166 -0
  415. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_command_request.rb +251 -0
  416. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_command_result.rb +294 -0
  417. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_deployment.rb +242 -0
  418. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_deployment_page.rb +192 -0
  419. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_execution_request.rb +329 -0
  420. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_execution_result.rb +381 -0
  421. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_file_read_request.rb +182 -0
  422. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_file_result.rb +164 -0
  423. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_file_write_request.rb +217 -0
  424. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_pagination.rb +199 -0
  425. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_preset.rb +294 -0
  426. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_preset_list.rb +166 -0
  427. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_session.rb +407 -0
  428. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_session_page.rb +192 -0
  429. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_subject_grant_request.rb +164 -0
  430. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_template.rb +321 -0
  431. data/lib/volcano/generated/lib/volcano-generated/models/sandbox_template_page.rb +192 -0
  432. data/lib/volcano/generated/lib/volcano-generated/models/schedule_request.rb +2 -2
  433. data/lib/volcano/generated/lib/volcano-generated/models/service_key.rb +2 -2
  434. data/lib/volcano/generated/lib/volcano-generated/models/set_project_git_production_branch_request.rb +2 -2
  435. data/lib/volcano/generated/lib/volcano-generated/models/storage_bucket.rb +2 -2
  436. data/lib/volcano/generated/lib/volcano-generated/models/storage_copy_request.rb +2 -2
  437. data/lib/volcano/generated/lib/volcano-generated/models/storage_list_response.rb +2 -2
  438. data/lib/volcano/generated/lib/volcano-generated/models/storage_move_request.rb +2 -2
  439. data/lib/volcano/generated/lib/volcano-generated/models/storage_object.rb +2 -2
  440. data/lib/volcano/generated/lib/volcano-generated/models/storage_object_with_bucket.rb +2 -2
  441. data/lib/volcano/generated/lib/volcano-generated/models/storage_policy.rb +2 -2
  442. data/lib/volcano/generated/lib/volcano-generated/models/storage_stats.rb +2 -2
  443. data/lib/volcano/generated/lib/volcano-generated/models/storage_visibility_request.rb +2 -2
  444. data/lib/volcano/generated/lib/volcano-generated/models/test_email_request.rb +2 -2
  445. data/lib/volcano/generated/lib/volcano-generated/models/test_email_response.rb +2 -2
  446. data/lib/volcano/generated/lib/volcano-generated/models/unban_user_response.rb +2 -2
  447. data/lib/volcano/generated/lib/volcano-generated/models/update_auth_config_request.rb +2 -2
  448. data/lib/volcano/generated/lib/volcano-generated/models/update_auth_hosted_page_request.rb +2 -2
  449. data/lib/volcano/generated/lib/volcano-generated/models/update_auth_page_layout_request.rb +2 -2
  450. data/lib/volcano/generated/lib/volcano-generated/models/update_auth_page_theme_request.rb +2 -2
  451. data/lib/volcano/generated/lib/volcano-generated/models/update_database_branch_request.rb +2 -2
  452. data/lib/volcano/generated/lib/volcano-generated/models/update_database_type_request.rb +2 -2
  453. data/lib/volcano/generated/lib/volcano-generated/models/update_email_template_request.rb +2 -2
  454. data/lib/volcano/generated/lib/volcano-generated/models/update_function_request.rb +13 -4
  455. data/lib/volcano/generated/lib/volcano-generated/models/update_function_scheduler_request.rb +2 -2
  456. data/lib/volcano/generated/lib/volcano-generated/models/update_o_auth_config_request.rb +2 -2
  457. data/lib/volcano/generated/lib/volcano-generated/models/update_project_git_deploy_settings_request.rb +2 -2
  458. data/lib/volcano/generated/lib/volcano-generated/models/update_project_request.rb +2 -2
  459. data/lib/volcano/generated/lib/volcano-generated/models/update_realtime_config_request.rb +2 -2
  460. data/lib/volcano/generated/lib/volcano-generated/models/update_sandbox_template_request.rb +175 -0
  461. data/lib/volcano/generated/lib/volcano-generated/models/update_storage_bucket_request.rb +2 -2
  462. data/lib/volcano/generated/lib/volcano-generated/models/update_variable_request.rb +2 -2
  463. data/lib/volcano/generated/lib/volcano-generated/models/upload_session_part.rb +2 -2
  464. data/lib/volcano/generated/lib/volcano-generated/models/upload_session_status_response.rb +2 -2
  465. data/lib/volcano/generated/lib/volcano-generated/models/upload_storage_object201_response.rb +3 -3
  466. data/lib/volcano/generated/lib/volcano-generated/models/usage_data_point.rb +2 -2
  467. data/lib/volcano/generated/lib/volcano-generated/models/variable.rb +13 -3
  468. data/lib/volcano/generated/lib/volcano-generated/models/verified_domain.rb +192 -0
  469. data/lib/volcano/generated/lib/volcano-generated/models/verified_domains_response.rb +166 -0
  470. data/lib/volcano/generated/lib/volcano-generated/models/verify_domain_request.rb +183 -0
  471. data/lib/volcano/generated/lib/volcano-generated/version.rb +2 -2
  472. data/lib/volcano/generated/lib/volcano-generated.rb +82 -2
  473. data/lib/volcano/generated_transport.rb +1 -0
  474. data/lib/volcano/generated_transport_durable.rb +59 -0
  475. data/lib/volcano/generated_transport_functions.rb +1 -1
  476. data/lib/volcano/generated_transport_sandbox.rb +101 -0
  477. data/lib/volcano/lock_response.rb +2 -2
  478. data/lib/volcano/sandbox_deployment_response.rb +39 -0
  479. data/lib/volcano/sandbox_deployments.rb +79 -0
  480. data/lib/volcano/sandbox_files.rb +37 -0
  481. data/lib/volcano/sandbox_models.rb +32 -0
  482. data/lib/volcano/sandbox_request.rb +98 -0
  483. data/lib/volcano/sandbox_response.rb +74 -0
  484. data/lib/volcano/sandbox_session.rb +78 -0
  485. data/lib/volcano/sandboxes.rb +69 -0
  486. data/lib/volcano/storage_mutations.rb +2 -2
  487. data/lib/volcano/storage_object_response.rb +2 -2
  488. data/lib/volcano/transport.rb +1 -1
  489. data/lib/volcano/version.rb +1 -1
  490. data/lib/volcano.rb +13 -0
  491. data/sig/client.rbs +1 -0
  492. data/sig/core_facades.rbs +14 -0
  493. data/sig/durable_approval_records.rbs +218 -0
  494. data/sig/errors.rbs +3 -0
  495. data/sig/sandboxes.rbs +125 -0
  496. metadata +119 -10
@@ -0,0 +1,191 @@
1
+ =begin
2
+ #Volcano API
3
+
4
+ #Public API for Volcano clients, SDKs, and CLI tooling (Port 8000). This specification intentionally excludes first-party/internal APIs. See api/openapi-internal.yaml for non-public internal and Builder operations.
5
+
6
+ The version of the OpenAPI document: 3.0.0
7
+ Contact: support@volcano.dev
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.17.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Volcano::Generated
17
+ # Domain ownership conflict. With `code: ownership_verification_required`, the account has not proven it owns the domain: publish `required_record` in DNS and send the same request again. The retry succeeds once Volcano can see the record. Other conflicts omit both fields.
18
+ class FrontendCustomDomainConflictError < ApiModelBase
19
+ attr_accessor :error
20
+
21
+ # Stable machine-readable error code when a specific recovery path is available.
22
+ attr_accessor :code
23
+
24
+ attr_accessor :required_record
25
+
26
+ # Attribute mapping from ruby-style variable name to JSON key.
27
+ def self.attribute_map
28
+ {
29
+ :'error' => :'error',
30
+ :'code' => :'code',
31
+ :'required_record' => :'required_record'
32
+ }
33
+ end
34
+
35
+ # Returns attribute mapping this model knows about
36
+ def self.acceptable_attribute_map
37
+ attribute_map
38
+ end
39
+
40
+ # Returns all the JSON keys this model knows about
41
+ def self.acceptable_attributes
42
+ acceptable_attribute_map.values
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ def self.openapi_types
47
+ {
48
+ :'error' => :'String',
49
+ :'code' => :'String',
50
+ :'required_record' => :'FrontendDomainVerificationRecord'
51
+ }
52
+ end
53
+
54
+ # List of attributes with nullable: true
55
+ def self.openapi_nullable
56
+ Set.new([
57
+ ])
58
+ end
59
+
60
+ # List of class defined in allOf (OpenAPI v3)
61
+ def self.openapi_all_of
62
+ [
63
+ :'Error'
64
+ ]
65
+ end
66
+
67
+ # Initializes the object
68
+ # @param [Hash] attributes Model attributes in the form of hash
69
+ def initialize(attributes = {})
70
+ if (!attributes.is_a?(Hash))
71
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Volcano::Generated::FrontendCustomDomainConflictError` initialize method"
72
+ end
73
+
74
+ # check to see if the attribute exists and convert string to symbol for hash key
75
+ acceptable_attribute_map = self.class.acceptable_attribute_map
76
+ attributes = attributes.each_with_object({}) { |(k, v), h|
77
+ if (!acceptable_attribute_map.key?(k.to_sym))
78
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Volcano::Generated::FrontendCustomDomainConflictError`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
79
+ end
80
+ h[k.to_sym] = v
81
+ }
82
+
83
+ if attributes.key?(:'error')
84
+ self.error = attributes[:'error']
85
+ else
86
+ self.error = nil
87
+ end
88
+
89
+ if attributes.key?(:'code')
90
+ self.code = attributes[:'code']
91
+ end
92
+
93
+ if attributes.key?(:'required_record')
94
+ self.required_record = attributes[:'required_record']
95
+ end
96
+ end
97
+
98
+ # Show invalid properties with the reasons. Usually used together with valid?
99
+ # @return Array for valid properties with the reasons
100
+ def list_invalid_properties
101
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
102
+ invalid_properties = Array.new
103
+ if @error.nil?
104
+ invalid_properties.push('invalid value for "error", error cannot be nil.')
105
+ end
106
+
107
+ invalid_properties
108
+ end
109
+
110
+ # Check to see if the all the properties in the model are valid
111
+ # @return true if the model is valid
112
+ def valid?
113
+ warn '[DEPRECATED] the `valid?` method is obsolete'
114
+ return false if @error.nil?
115
+ true
116
+ end
117
+
118
+ # Custom attribute writer method with validation
119
+ # @param [Object] error Value to be assigned
120
+ def error=(error)
121
+ if error.nil?
122
+ fail ArgumentError, 'error cannot be nil'
123
+ end
124
+
125
+ @error = error
126
+ end
127
+
128
+ # Checks equality by comparing each attribute.
129
+ # @param [Object] Object to be compared
130
+ def ==(o)
131
+ return true if self.equal?(o)
132
+ self.class == o.class &&
133
+ error == o.error &&
134
+ code == o.code &&
135
+ required_record == o.required_record
136
+ end
137
+
138
+ # @see the `==` method
139
+ # @param [Object] Object to be compared
140
+ def eql?(o)
141
+ self == o
142
+ end
143
+
144
+ # Calculates hash code according to all attributes.
145
+ # @return [Integer] Hash code
146
+ def hash
147
+ [error, code, required_record].hash
148
+ end
149
+
150
+ # Builds the object from hash
151
+ # @param [Hash] attributes Model attributes in the form of hash
152
+ # @return [Object] Returns the model itself
153
+ def self.build_from_hash(attributes)
154
+ return nil unless attributes.is_a?(Hash)
155
+ attributes = attributes.transform_keys(&:to_sym)
156
+ transformed_hash = {}
157
+ openapi_types.each_pair do |key, type|
158
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
159
+ transformed_hash["#{key}"] = nil
160
+ elsif type =~ /\AArray<(.*)>/i
161
+ # check to ensure the input is an array given that the attribute
162
+ # is documented as an array but the input is not
163
+ if attributes[attribute_map[key]].is_a?(Array)
164
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
165
+ end
166
+ elsif !attributes[attribute_map[key]].nil?
167
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
168
+ end
169
+ end
170
+ new(transformed_hash)
171
+ end
172
+
173
+ # Returns the object in the form of hash
174
+ # @return [Hash] Returns the object in the form of hash
175
+ def to_hash
176
+ hash = {}
177
+ self.class.attribute_map.each_pair do |attr, param|
178
+ value = self.send(attr)
179
+ if value.nil?
180
+ is_nullable = self.class.openapi_nullable.include?(attr)
181
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
182
+ end
183
+
184
+ hash[param] = _to_hash(value)
185
+ end
186
+ hash
187
+ end
188
+
189
+ end
190
+
191
+ end
@@ -1,7 +1,7 @@
1
1
  =begin
2
- #Volcano Hosting API
2
+ #Volcano API
3
3
 
4
- #Public API for Volcano Hosting clients, SDKs, and CLI tooling (Port 8000). This specification intentionally excludes first-party/internal APIs. See api/openapi-internal.yaml for non-public internal and Builder operations.
4
+ #Public API for Volcano clients, SDKs, and CLI tooling (Port 8000). This specification intentionally excludes first-party/internal APIs. See api/openapi-internal.yaml for non-public internal and Builder operations.
5
5
 
6
6
  The version of the OpenAPI document: 3.0.0
7
7
  Contact: support@volcano.dev
@@ -21,12 +21,20 @@ module Volcano::Generated
21
21
 
22
22
  attr_accessor :domain_status
23
23
 
24
+ # `verified`: the domain is served by a validated certificate. `pending`: it is not served yet, is being re-validated after its certificate material was withdrawn, or Volcano is retrying after a failure. `failed`: a failure left the domain unserved, alongside `domain_status: failed`; managed domains report the cause in `failure_reason`.
24
25
  attr_accessor :verification_status
25
26
 
27
+ # Failure category, present only when managed TLS setup has failed. Current values are provider, certificate, ownership, and internal; ownership means another account has already claimed the hostname through ownership verification. Treat unrecognized values as internal.
28
+ attr_accessor :failure_reason
29
+
26
30
  attr_accessor :verification_records
27
31
 
32
+ # Deprecated and no longer returned. Use routing_target_hostname as the DNS routing target.
28
33
  attr_accessor :required_routing_record
29
34
 
35
+ # DNS routing target hostname for this frontend. The DNS record type depends on whether the custom domain is a zone apex.
36
+ attr_accessor :routing_target_hostname
37
+
30
38
  attr_accessor :effective_urls
31
39
 
32
40
  attr_accessor :created_at
@@ -62,8 +70,10 @@ module Volcano::Generated
62
70
  :'tls_mode' => :'tls_mode',
63
71
  :'domain_status' => :'domain_status',
64
72
  :'verification_status' => :'verification_status',
73
+ :'failure_reason' => :'failure_reason',
65
74
  :'verification_records' => :'verification_records',
66
75
  :'required_routing_record' => :'required_routing_record',
76
+ :'routing_target_hostname' => :'routing_target_hostname',
67
77
  :'effective_urls' => :'effective_urls',
68
78
  :'created_at' => :'created_at',
69
79
  :'updated_at' => :'updated_at'
@@ -87,8 +97,10 @@ module Volcano::Generated
87
97
  :'tls_mode' => :'String',
88
98
  :'domain_status' => :'String',
89
99
  :'verification_status' => :'String',
100
+ :'failure_reason' => :'String',
90
101
  :'verification_records' => :'Array<FrontendDomainVerificationRecord>',
91
102
  :'required_routing_record' => :'FrontendDomainRoutingRecord',
103
+ :'routing_target_hostname' => :'String',
92
104
  :'effective_urls' => :'Array<String>',
93
105
  :'created_at' => :'Time',
94
106
  :'updated_at' => :'Time'
@@ -141,6 +153,10 @@ module Volcano::Generated
141
153
  self.verification_status = nil
142
154
  end
143
155
 
156
+ if attributes.key?(:'failure_reason')
157
+ self.failure_reason = attributes[:'failure_reason']
158
+ end
159
+
144
160
  if attributes.key?(:'verification_records')
145
161
  if (value = attributes[:'verification_records']).is_a?(Array)
146
162
  self.verification_records = value
@@ -151,6 +167,10 @@ module Volcano::Generated
151
167
  self.required_routing_record = attributes[:'required_routing_record']
152
168
  end
153
169
 
170
+ if attributes.key?(:'routing_target_hostname')
171
+ self.routing_target_hostname = attributes[:'routing_target_hostname']
172
+ end
173
+
154
174
  if attributes.key?(:'effective_urls')
155
175
  if (value = attributes[:'effective_urls']).is_a?(Array)
156
176
  self.effective_urls = value
@@ -220,7 +240,7 @@ module Volcano::Generated
220
240
  domain_status_validator = EnumAttributeValidator.new('String', ["pending_verification", "provisioning", "active", "detaching", "failed", "deleted"])
221
241
  return false unless domain_status_validator.valid?(@domain_status)
222
242
  return false if @verification_status.nil?
223
- verification_status_validator = EnumAttributeValidator.new('String', ["pending", "verified"])
243
+ verification_status_validator = EnumAttributeValidator.new('String', ["pending", "verified", "failed"])
224
244
  return false unless verification_status_validator.valid?(@verification_status)
225
245
  return false if @effective_urls.nil?
226
246
  return false if @created_at.nil?
@@ -261,7 +281,7 @@ module Volcano::Generated
261
281
  # Custom attribute writer method checking allowed values (enum).
262
282
  # @param [Object] verification_status Object to be assigned
263
283
  def verification_status=(verification_status)
264
- validator = EnumAttributeValidator.new('String', ["pending", "verified"])
284
+ validator = EnumAttributeValidator.new('String', ["pending", "verified", "failed"])
265
285
  unless validator.valid?(verification_status)
266
286
  fail ArgumentError, "invalid value for \"verification_status\", must be one of #{validator.allowable_values}."
267
287
  end
@@ -307,8 +327,10 @@ module Volcano::Generated
307
327
  tls_mode == o.tls_mode &&
308
328
  domain_status == o.domain_status &&
309
329
  verification_status == o.verification_status &&
330
+ failure_reason == o.failure_reason &&
310
331
  verification_records == o.verification_records &&
311
332
  required_routing_record == o.required_routing_record &&
333
+ routing_target_hostname == o.routing_target_hostname &&
312
334
  effective_urls == o.effective_urls &&
313
335
  created_at == o.created_at &&
314
336
  updated_at == o.updated_at
@@ -323,7 +345,7 @@ module Volcano::Generated
323
345
  # Calculates hash code according to all attributes.
324
346
  # @return [Integer] Hash code
325
347
  def hash
326
- [domain, tls_mode, domain_status, verification_status, verification_records, required_routing_record, effective_urls, created_at, updated_at].hash
348
+ [domain, tls_mode, domain_status, verification_status, failure_reason, verification_records, required_routing_record, routing_target_hostname, effective_urls, created_at, updated_at].hash
327
349
  end
328
350
 
329
351
  # Builds the object from hash
@@ -1,7 +1,7 @@
1
1
  =begin
2
- #Volcano Hosting API
2
+ #Volcano API
3
3
 
4
- #Public API for Volcano Hosting clients, SDKs, and CLI tooling (Port 8000). This specification intentionally excludes first-party/internal APIs. See api/openapi-internal.yaml for non-public internal and Builder operations.
4
+ #Public API for Volcano clients, SDKs, and CLI tooling (Port 8000). This specification intentionally excludes first-party/internal APIs. See api/openapi-internal.yaml for non-public internal and Builder operations.
5
5
 
6
6
  The version of the OpenAPI document: 3.0.0
7
7
  Contact: support@volcano.dev
@@ -14,17 +14,18 @@ require 'date'
14
14
  require 'time'
15
15
 
16
16
  module Volcano::Generated
17
+ # TLS for a new custom domain. With `mode: managed`, Volcano issues and renews the certificate; omit every PEM field. With `mode: byoc`, send both `certificate_pem` and `private_key_pem`, plus an optional `certificate_chain_pem`.
17
18
  class FrontendCustomDomainTLSConfig < ApiModelBase
18
- # BYOC is mandatory for custom domain creation.
19
+ # managed for a Volcano-issued certificate; byoc to supply your own.
19
20
  attr_accessor :mode
20
21
 
21
- # Required. PEM-encoded certificate.
22
+ # PEM-encoded certificate. Required when mode is byoc; not allowed when mode is managed.
22
23
  attr_accessor :certificate_pem
23
24
 
24
- # Required. PEM-encoded private key.
25
+ # PEM-encoded private key. Required when mode is byoc; not allowed when mode is managed.
25
26
  attr_accessor :private_key_pem
26
27
 
27
- # Optional PEM-encoded certificate chain.
28
+ # Optional PEM-encoded certificate chain when mode is byoc; not allowed when mode is managed.
28
29
  attr_accessor :certificate_chain_pem
29
30
 
30
31
  class EnumAttributeValidator
@@ -109,14 +110,10 @@ module Volcano::Generated
109
110
 
110
111
  if attributes.key?(:'certificate_pem')
111
112
  self.certificate_pem = attributes[:'certificate_pem']
112
- else
113
- self.certificate_pem = nil
114
113
  end
115
114
 
116
115
  if attributes.key?(:'private_key_pem')
117
116
  self.private_key_pem = attributes[:'private_key_pem']
118
- else
119
- self.private_key_pem = nil
120
117
  end
121
118
 
122
119
  if attributes.key?(:'certificate_chain_pem')
@@ -133,12 +130,16 @@ module Volcano::Generated
133
130
  invalid_properties.push('invalid value for "mode", mode cannot be nil.')
134
131
  end
135
132
 
136
- if @certificate_pem.nil?
137
- invalid_properties.push('invalid value for "certificate_pem", certificate_pem cannot be nil.')
133
+ if !@certificate_pem.nil? && @certificate_pem.to_s.length > 65536
134
+ invalid_properties.push('invalid value for "certificate_pem", the character length must be smaller than or equal to 65536.')
135
+ end
136
+
137
+ if !@private_key_pem.nil? && @private_key_pem.to_s.length > 65536
138
+ invalid_properties.push('invalid value for "private_key_pem", the character length must be smaller than or equal to 65536.')
138
139
  end
139
140
 
140
- if @private_key_pem.nil?
141
- invalid_properties.push('invalid value for "private_key_pem", private_key_pem cannot be nil.')
141
+ if !@certificate_chain_pem.nil? && @certificate_chain_pem.to_s.length > 65536
142
+ invalid_properties.push('invalid value for "certificate_chain_pem", the character length must be smaller than or equal to 65536.')
142
143
  end
143
144
 
144
145
  invalid_properties
@@ -149,17 +150,18 @@ module Volcano::Generated
149
150
  def valid?
150
151
  warn '[DEPRECATED] the `valid?` method is obsolete'
151
152
  return false if @mode.nil?
152
- mode_validator = EnumAttributeValidator.new('String', ["byoc"])
153
+ mode_validator = EnumAttributeValidator.new('String', ["managed", "byoc"])
153
154
  return false unless mode_validator.valid?(@mode)
154
- return false if @certificate_pem.nil?
155
- return false if @private_key_pem.nil?
155
+ return false if !@certificate_pem.nil? && @certificate_pem.to_s.length > 65536
156
+ return false if !@private_key_pem.nil? && @private_key_pem.to_s.length > 65536
157
+ return false if !@certificate_chain_pem.nil? && @certificate_chain_pem.to_s.length > 65536
156
158
  true
157
159
  end
158
160
 
159
161
  # Custom attribute writer method checking allowed values (enum).
160
162
  # @param [Object] mode Object to be assigned
161
163
  def mode=(mode)
162
- validator = EnumAttributeValidator.new('String', ["byoc"])
164
+ validator = EnumAttributeValidator.new('String', ["managed", "byoc"])
163
165
  unless validator.valid?(mode)
164
166
  fail ArgumentError, "invalid value for \"mode\", must be one of #{validator.allowable_values}."
165
167
  end
@@ -173,6 +175,10 @@ module Volcano::Generated
173
175
  fail ArgumentError, 'certificate_pem cannot be nil'
174
176
  end
175
177
 
178
+ if certificate_pem.to_s.length > 65536
179
+ fail ArgumentError, 'invalid value for "certificate_pem", the character length must be smaller than or equal to 65536.'
180
+ end
181
+
176
182
  @certificate_pem = certificate_pem
177
183
  end
178
184
 
@@ -183,9 +189,27 @@ module Volcano::Generated
183
189
  fail ArgumentError, 'private_key_pem cannot be nil'
184
190
  end
185
191
 
192
+ if private_key_pem.to_s.length > 65536
193
+ fail ArgumentError, 'invalid value for "private_key_pem", the character length must be smaller than or equal to 65536.'
194
+ end
195
+
186
196
  @private_key_pem = private_key_pem
187
197
  end
188
198
 
199
+ # Custom attribute writer method with validation
200
+ # @param [Object] certificate_chain_pem Value to be assigned
201
+ def certificate_chain_pem=(certificate_chain_pem)
202
+ if certificate_chain_pem.nil?
203
+ fail ArgumentError, 'certificate_chain_pem cannot be nil'
204
+ end
205
+
206
+ if certificate_chain_pem.to_s.length > 65536
207
+ fail ArgumentError, 'invalid value for "certificate_chain_pem", the character length must be smaller than or equal to 65536.'
208
+ end
209
+
210
+ @certificate_chain_pem = certificate_chain_pem
211
+ end
212
+
189
213
  # Checks equality by comparing each attribute.
190
214
  # @param [Object] Object to be compared
191
215
  def ==(o)
@@ -0,0 +1,103 @@
1
+ =begin
2
+ #Volcano API
3
+
4
+ #Public API for Volcano clients, SDKs, and CLI tooling (Port 8000). This specification intentionally excludes first-party/internal APIs. See api/openapi-internal.yaml for non-public internal and Builder operations.
5
+
6
+ The version of the OpenAPI document: 3.0.0
7
+ Contact: support@volcano.dev
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.17.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Volcano::Generated
17
+ module FrontendCustomDomainTLSConfigNot
18
+ class << self
19
+ # List of class defined in anyOf (OpenAPI v3)
20
+ def openapi_any_of
21
+ [
22
+ :'FrontendCustomDomainTLSConfigNotAnyOf',
23
+ :'FrontendCustomDomainTLSConfigNotAnyOf1'
24
+ ]
25
+ end
26
+
27
+ # Builds the object
28
+ # @param [Mixed] Data to be matched against the list of anyOf items
29
+ # @return [Object] Returns the model or the data itself
30
+ def build(data)
31
+ # Go through the list of anyOf items and attempt to identify the appropriate one.
32
+ # Note:
33
+ # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
34
+ # due to the way the deserialization is made in the base_object template (it just casts without verifying).
35
+ # - TODO: scalar values are de facto behaving as if they were nullable.
36
+ # - TODO: logging when debugging is set.
37
+ openapi_any_of.each do |klass|
38
+ begin
39
+ next if klass == :AnyType # "nullable: true"
40
+ return find_and_cast_into_type(klass, data)
41
+ rescue # rescue all errors so we keep iterating even if the current item lookup raises
42
+ end
43
+ end
44
+
45
+ openapi_any_of.include?(:AnyType) ? data : nil
46
+ end
47
+
48
+ private
49
+
50
+ SchemaMismatchError = Class.new(StandardError)
51
+
52
+ # Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
53
+ def find_and_cast_into_type(klass, data)
54
+ return if data.nil?
55
+
56
+ case klass.to_s
57
+ when 'Boolean'
58
+ return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
59
+ when 'Float'
60
+ return data if data.instance_of?(Float)
61
+ when 'Integer'
62
+ return data if data.instance_of?(Integer)
63
+ when 'Time'
64
+ return Time.parse(data)
65
+ when 'Date'
66
+ return Date.iso8601(data)
67
+ when 'String'
68
+ return data if data.instance_of?(String)
69
+ when 'Object' # "type: object"
70
+ return data if data.instance_of?(Hash)
71
+ when /\AArray<(?<sub_type>.+)>\z/ # "type: array"
72
+ if data.instance_of?(Array)
73
+ sub_type = Regexp.last_match[:sub_type]
74
+ return data.map { |item| find_and_cast_into_type(sub_type, item) }
75
+ end
76
+ when /\AHash<String, (?<sub_type>.+)>\z/ # "type: object" with "additionalProperties: { ... }"
77
+ if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
78
+ sub_type = Regexp.last_match[:sub_type]
79
+ return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
80
+ end
81
+ else # model
82
+ const = Volcano::Generated.const_get(klass)
83
+ if const
84
+ if const.respond_to?(:openapi_any_of) # nested anyOf model
85
+ model = const.build(data)
86
+ return model if model
87
+ else
88
+ # raise if data contains keys that are not known to the model
89
+ raise if const.respond_to?(:acceptable_attributes) && !(data.keys - const.acceptable_attributes).empty?
90
+ model = const.build_from_hash(data)
91
+ return model if model
92
+ end
93
+ end
94
+ end
95
+
96
+ raise # if no match by now, raise
97
+ rescue
98
+ raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
99
+ end
100
+ end
101
+ end
102
+
103
+ end